Наумов Алексей

Наумов Алексей

С нами с 31 марта 2013; Место в рейтинге пользователей: #13
Наумов Алексей
26 мая 2020, 15:45
0
{$_modx->runSnippet('!pdoMenu', [
    'parents' => $_modx->runSnippet('!getparents'),
    'level' => 1,
    'sortby' => $sortby,
    'tplOuter' => 'chunk'
    'tpl' => 'chunk'
    'tplHere' => 'chunk'

])}
Наумов Алексей
26 мая 2020, 13:13
0
{'pdoMenu' | snippet : [
...
'tpl' => 'tplHideSomeChilds'
]}

tplHideSomeChilds:
<li {$classes}>
    <a href="{$link}" {$attributes}>{$menutitle}</a>
    {if $id != 1532}
        {$wrapper}
    {/if}
</li>
Наумов Алексей
26 мая 2020, 12:05
0
Два сценария:
1. Включить в pdoMenu проверку прав (параметр checkPermissions) и настроить их. Работает, но подтормаживает, т.к. много запросов в БД.
2. Лучше просто пересмотреть верстку, и для авторизованных сделать блок (пример из документации):
{if $_modx->user.id > 0}
    Привет, {$_modx->user.fullname}!
{else}
    Вам нужно авторизоваться!
{/if}
Наумов Алексей
25 мая 2020, 13:18
0
Далек от SqLite.
А какое практическое применение? Какая выгода в сценарии MODX + SqLite?
Наумов Алексей
25 мая 2020, 09:35
0
Так это Связи в чистом виде, многие-ко многим. Вот только оба ресурса должны быть товарами…
Наумов Алексей
20 мая 2020, 12:31
0
Создаем отдельный чанк для параметра tpl у pdoMenu:
{if $id = 1532}
<li><h3>Заголовок</h3></li>
{/if}
<li {$classes}><a href="{$link}" {$attributes}>{$menutitle}</a>{$wrapper}</li>
где 1532 id ресурса «Все о подписках».
Наумов Алексей
19 мая 2020, 12:28
+1
Попробуй оформить заказ, не указывая почту.
Напоминает попытку сделать поле email необязательным.
Если почта не указывается — генерируется случайная.
Наумов Алексей
13 мая 2020, 09:55
+1
Создай сниппет ".uri", который ничего не делает.
Наумов Алексей
08 мая 2020, 13:35
0
Можно при не нажатой галочке поле отключить (disabled) и присваивать «пустое» значение например "-".
При установке галочки поле включаем, если значение дефис — очищаем, предоставляя возможность его заполнить.
Наумов Алексей
29 апреля 2020, 16:35
+1
Создаем значит сниппет FileDownload
В нем любым алгоритмом, который сможете найти по запросу «php обратимое шифрование» зашифровываете имя файла, после чего выводите ссылку /download?file=ЗАШИФРОВАННЫЙ_ПУТЬ
На странице /download другой сниппет читает GET параметр и отдает файл, на эту тему читаем к примеру статью habr.com/ru/post/151795/
Наумов Алексей
29 апреля 2020, 16:28
+1
Может поискать узкие места на сайте, возможно есть что оптимизировать?
А насчет конфигурации VPS… если сайт простой, то и 512 мБ памяти хватит, а если тяжелый, может 4 Гб нужно, данных мало :)

Большой совет — попробовать максимально в кеш данные класть, какие-то промежуточные наборы данных, готовые куски верстки и т.д.

У VDS еще такая проблемка, что при резких всплесках нагрузки нет большого запаса, вы явно ограничены памятью и процессором. В случае обычного хостинга, как правило, считаются средние нагрузки за какой-то период и кратковременные всплески проходят хорошо.
Наумов Алексей
25 апреля 2020, 13:38
0
Если метки цепляет — то, возможно, новый лучше, да… но я не гарантирую :)
А ключ верно, нужно получить.
Наумов Алексей
25 апреля 2020, 13:14
0
Добрый день!
mapex и mapex2 разные компоненты!
Просто mapex должен работать, смотрите ошибки в консоли сайта, возможно что Яндекс.Карты затребовали обязательный ключ для доступа к API.
Наумов Алексей
24 апреля 2020, 11:26
+1
Можно сделать join таблицы пользователей и выводить поле.
Можно каждый раз какой-нибудь сниппет вызывать для вывода поля по id пользователя.
Можно модификатором возпользоваться (Fenom)
{1 | user : 'fullname'} // Administrator
А id пользователя, если комментарий оставил зарегистрированный, доступно в чанке как createdby
Наумов Алексей
23 апреля 2020, 17:03
+1
Вариантов куча.
Но самое простое — да, создать отдельный раздел, где внутри будут неопубликованные страницы с pagetitle=user.id
И просто показывать контент этих страниц.
Наумов Алексей
22 апреля 2020, 09:40
0
И для pdoPage некешированный вызов нужен.
Наумов Алексей
21 апреля 2020, 17:55
+1
У foreach есть индекс операции:
{foreach $list as $value index=$index}

Просто сравниваем его в if и делаем break