• Как не выводить определённые пункты меню?

    alelunegov
    @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Я бы при таком не очень обычном случае сделал два меню.
    {'!pdoMenu'|snippet:[
        'parents' => '151,3,4',
        'level' => 1,
        'displayStart' => 1
    ]}
    {'!pdoMenu'|snippet:[
        'parents' => '0',
        'level' => 1,
        'resources' => '229,5,6,148'
    ]}

    В первом меню параметр displayStart как раз заставляет показывать начальные узлы.
    В данном случае надо еще будет правильно оформить параметры с шаблонами, но так как Вы не показали код верстки, то придется разобраться самостоятельно. Вся необходимая информация давно задокументирована: параметры шаблонов pdoMenu.

    P. S. Что бы во втором меню появлялись новые пункты без исправления кода, можно поменять значения параметра вот так: 'resources' => '-151,-3,-4'. И тогда, если создать новую страницу в корне сайта, то она автоматически появиться в правом меню.
    Ответ написан
    Комментировать
  • Pdomenu как вывести у текущего айди ресурсы которые внутри?

    alelunegov
    @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Так вот эта конструкция делает именно то, что Вам нужно:
    {'!pdoMenu'|snippet:[
        'level' => 2,
        'parents' => $_modx->resource.id
    ]}

    Переменная $_modx->resource.id будет на каждой странице заменяться на ID ресурса.

    P. S. Отмечайте пожалуйста ответы, которые Вам помогли, как решение.
    Ответ написан
  • Как не выводить subnav у определённых пунктов меню?

    alelunegov
    @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Если Вам надо исключить из меню именно проекты, и у них используется отдельный шаблон (например, с id = 4), то при помощи параметра templates:
    'templates' => '-4',
    Ответ написан
    Комментировать
  • Стоит ли посадить landing Page на ModX?

    alelunegov
    @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    На вопрос, поставленный таким образом ответить «правильно» здесь никто не сможет. Потому что это бизнес-вопрос, и искать ответ на него должны заказчик и разработчик сайта.
    Разработчик должен рассказать заказчику о всех плюсах и минусах (включая стоимость) посадки Лендинга на MODX по сравнению с другими вариантами, а заказчик должен уже сам принять решение, нужно ему это или нет.
    Но это идеальная ситуация, когда и разработчик хороший специалист, и заказчик желает вникать в процесс разработки. Бывает так, что заказчик дает деньги и говорит, что «мне не важно как, главное что бы работало». А разработчик (не очень опытный или на авось надеется, или знает, что в будущем проблемы с этим сайтом заказчик придет решать к нему за дополнительную плату) только и рад это слышать и делает, не особо заморачивась, как ему удобно.
    Но, если в будущем, при втором варианте, случится какая-то неучтенная неприятность с сайтом, виноват будет не заказчик, так как он не специалист и не должен знать, что может что-то пойти не так, как он думает. Виноват будет конечно же разработчик.
    Ответ написан
    Комментировать
  • Как сделать вывод значение нажатого поля?

    alelunegov
    @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Павел, Вы вопрос задаете немного не по адресу. Так как по условию задачи при выборе места его номер просто попадает в текстовое поле (или наоборот, исчезает из него), но при этом ничего не отправляется на сервер, то надо решать эту задачу на стороне фронтенда, через JavaScript:

    MODX в данном случае нужен лишь для того, что бы вывести классы для свободных и занятых мест.

    P. S. Мой код возможно не совсем хорош для Вас. Привел его только для примера.
    Ответ написан
    Комментировать
  • Как вывести pdoResources с условием?

    alelunegov
    @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Для решения Вашей задачи у pdoResources есть параметр &tplWrapper (чанк-обёртка, для заворачивания всех результатов. Понимает один плейсхолдер: [[+output]]. Не работает вместе с параметром &toSeparatePlaceholders).

    [[pdoResources?
        &tpl=`some_tpl`
        &limit=`0`
        &parents=`55`
        &resources=`-[[#[[*id]].parent]]`
        &sortby=`{"menuindex": "ASC"}`
        &tplWrapper=`@INLINE
            <div class="some_block">
                <p class="block_heading">Какой-то заголовок</p>
                <div class="block_items">
                    [[+output]]
                </div>
            </div>
        `
    ]]
    Ответ написан
    1 комментарий
  • Как лучше хранить статичные настройки в MODX?

    alelunegov
    @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Для этого есть замечательное дополнение ClientConfig, данные редактируются на отдельной странице в админке, а в шаблоне вывод как у системных настроек.
    Ответ написан
    Комментировать
  • Как вывести ссылки на 2 соединенные переводом страницы через Babel в Modx?

    alelunegov
    @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Попробуйте сниппет BabelLinks с параметром resourceId?
    Ответ написан
  • Modx свой обработчик формы, можно?

    alelunegov
    @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Ежели у Вас форма обрабатывается вашим скриптом из отдельного php файла, то MODX тут ни при чем. Ищите проблему в хостинге. Очень часто хостинг блокирует отправку писем с указанием отправителя сторонних адресов эл. почты. Попробуйте отправлять почту через SMTP.
    Ответ написан
    Комментировать
  • Почему не разворачивается проект на MODX на локальном сервере OpenServer?

    alelunegov
    @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Пути к каталогам надо указывать полностью. Например: C:/OpenServer/domains/modx.test/www/core/
    Ответ написан
    Комментировать
  • Можно ли сделать Bootstrap tabs на Pdomenu за один вызов?

    alelunegov
    @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Через pdoMenu только два вызова. Если используете шаблонизатор Fenom, то можно сделать через него 1 запрос к базе данных. Пример:
    {var $resources = $_modx->getResources(
        ['published' => 1, 'deleted' => 0],
        ['sortby' => 'id', 'sortdir' => 'ASC', 'limit' => 50]
    )}

    А потом дважды пройтись по массиву циклами. Примерно вот так:
    {foreach $resources as $resource}
        {$_modx->getChunk('@INLINE <p>{$id} {$pagetitle}</p>', $resource)}
    {/foreach}
    Ответ написан
    1 комментарий
  • Почему в конце og:url для главной добавляется в конце два слэша?

    alelunegov
    @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Отвечаю на вопрос: «где собака зарыта?»

    [[++site_url]] возвращает строку из системной настройки с ключом site_url, если такая задана. Если не задана, то берет сформированную строку из файла config.inc.php. Вы правильно поняли, что MODX_BASE_URL в Вашем случае (и для большей части сайтов) добавляет в строку слеш на конце.

    [[~[[*id]]]] возвращает строку с адресом страницы, сформированном по схеме, указанной в системной настройке с ключом link_tag_scheme. По ссылке можно прочитать про данную настройку. Там не сказано только одного, что у главной страницы обязательно будет слеш. И это правильно, так как при формировании ссылки без доменного имени для главной страницы не считая слеша не остается больше ничего.

    Если Вы хотите оставить тот вариант, который есть в Вашем ответе, но еще убрать слеш на конце у главной страницы, то можно сделать такой код:
    <link rel="canonical" href="[[++site_url]][[*id:ne=`[[++site_start]]`:then=`[[~[[*id]]]]`]]">
    Ответ написан
    2 комментария
  • Modx компонент msearch2 не выводит total?

    alelunegov
    @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Проверил на тестовом хостинге. Действительно количества результатов не выдается.
    Варианты решения.
    1. Написать в тех. поддержку и ждать обновления.
    2. Обернуть сниппет mSearch2 в pdoPage:

    [[!pdoPage?
        &element=`mSearch2`
        &tpl=`mSearch2_tpl`
        &tplWrapper=`mSearch2_wrapper`
        &parents=`75`
    ]]
    Ответ написан
    1 комментарий
  • Как в MODX заставить Ckeditor отображать контент так, как он отображается в браузере при открытии url?

    alelunegov
    @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    У меня изменение стилей через файл, указанный в параметре editor_css_path, вполне работает. Версии MODX и CKeditor те же, что и у Вас.

    Надо сказать, что после обновления файла со стилями, необходимо очищать кеш браузера.

    P. S. У Вас возможно ошибка с написанием самих стилей. Прикрепите хотя бы скрин части файла overall.css, или опубликуйте часть кода из этого файла.
    Ответ написан
  • Как добавить форму на главную в modx?

    alelunegov
    @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Рекомендую начинать изучение любой CMS с чтения документации.
    Вот по EvolutionCMS: https://docs.evo.im

    Конкретно по вашему вопросу ответ находится здесь: https://docs.evo.im/03_develop/02_elements/03_snip...
    Ответ написан
    Комментировать
  • Как вывести товары по значению tv с Migx?

    alelunegov
    @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Можно попробовать при помощи параметра выборки &where:
    [[getImageList? 
        &where=`{"top:=":"да"}`
        ...
    ]]
    Ответ написан
    1 комментарий
  • Почему ajax не срабатывает в FireFox MODX?

    alelunegov
    @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Потому что у вас по запросу на адрес modx2.my-tamagochi.ru/ajax1 возвращается ответ с ошибкой 404. И не только в Firefox, я проверил еще Яндекс.Браузером, Эджем и Хромом — тоже самое.
    Ответ написан
    Комментировать
  • Как сделать такую форму?

    alelunegov
    @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Это Квиз (опрос).
    Есть готовое дополнение для MODX за 990 рублей.

    Сделать Квиз на чистом FormIt будет непросто.
    Ответ написан
    Комментировать
  • Почему не работает проверка ModX?

    alelunegov
    @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    В сниппете getImageList в параметре &tpl=`@CODE:...` нельзя использовать модификатор вывода. Перенесите код в отдельный чанк, а имя чанка укажите в параметре &tpl=`имяЧанка` и все заработает.

    P. S. после class="img-fluid кавычку забыли.
    Ответ написан
    Комментировать
  • Как правильно присвоить классы изображениям в условном модификаторе tpl.msGallery для товаров old_price, new и обычных?

    alelunegov
    @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Приветствую!
    Для начала сто́ит код модификатора then написать в кавычках:
    [[+new:isnot=``:then=`
    <img src="{$file['medium']}" alt="{$file['description']}" title="{$file['name']}" class="item new">
    `:else=`
        [[+old_price:isnot=``:then=`
    <img src="{$file['medium']}" alt="{$file['description']}" title="{$file['name']}" class="item sale">
        `:else=`
    <img src="{$file['medium']}" alt="{$file['description']}" title="{$file['name']}" class="item">
        `]]
    `]]

    А во вторых обратите внимание, что у Вас в любом случае выводится одна и та же строка с разницей в одно слово, поэтому можно условие записать вот так:
    <img src="{$file['medium']}" alt="{$file['description']}" title="{$file['name']}" class="item[[+new:isnot=``:then=` new`:else=`[[+old_price:notempty=` sale`]]`]]">

    Плюс избавились от второго else.
    Ответ написан
    4 комментария