Всего 125 976 комментариев

Олег
25 февраля 2022, 10:42
0
Использую вот это и не работает:
&filterOptions=`{
      "more": ".load-more",
      "more_tpl": "<button class="load-more"><span class="load-more__checkmark">∨</span><span class="load-more__text">Загрузить ещё</span></button>",
  }`
Дима Сайт old см. профиль
25 февраля 2022, 09:55
0
Ну если иначе не получается, сделайте 2 разных файловых чанка с нужными обертками (и дополнительным вызовом pdoMenu для подпунктов, тормозов не бойтесь, меню кэшируется)

Далее в общем чеке сделайте проверку id нужных пунктов и используйте frenom {include file: path/to/innerchunk1.tpl}, если боитесь хардкода id, используйте стандартное поле русскому link_attributes и в админке задайте например класс или другой признак чтобы его и проверять в чеке.

Вообще сложные меню в modx строить очень легко именно за счёт частичного кэширования.

Основные препятствия к тому что собрать из быстро не в инструментах типа pdoMenu, он имеет достаточно настроек, а в укладывании рекурсии при работе меню в голове разработчика, чтобы понять в какое место втыкать код с логикой.

Не сочтите за что то обидное, я несколько лет назад так бился с меню пока не обнаружил неточность в документации pdoMenu что пришлось осваивать механику гитхаба для создания pull request в эту самую доку. Я тогда попробовал с pdoMenu наверное вообще всё ))
Константин
25 февраля 2022, 08:01
0
Получилось настроить разный вывод лишь подпункты выпадающего меню, то есть чанк &tplInnerRow.
А задача выводить эти подпункты в разных обертках, то есть сделать условие вывода в чанке &tplInner.
На скриншоте 2 обертка как у 1

1. skr.sh/sCehopuyFvu
2. skr.sh/sCehlrbmTcd

А должна быть как на скриншоте 3

3. skr.sh/sCeQnccd9f1
Алексей Смирнов
24 февраля 2022, 23:51
0
Видел этот компонент.
Но опять таки это больше билдер контента.
А речь идёт о полноценной теме-конструкторе. Конечно со своими нюансами с поправкой на MODX.
В скорее планирую релиз, так что можно будет пощупать.
Андрей
24 февраля 2022, 19:29
0
Ну либо можно так, я сразу решил на сообщество скинуть)
Дима Сайт old см. профиль
24 февраля 2022, 19:16
0
Для тех, кто (как и я) не очень любит подписываться на всякие сомнительные аккаунты (@Андрей я не про вас), вот ссылка «из того последнего поста» на доступную из web документацию: telegra.ph/Crypto-Pay-API-11-25
Pavel Zarubin
24 февраля 2022, 19:16
0
примерно так будет.
Ну вот об этом я и говорю, какой смысл использовать тогда newQuery если все то же самое и в таком же количестве можно написать напрямую в SQL?

getCollection, который предназначен не совсем для подобных дел
А для каких дел он тогда предназначен, если не может построить оптимальный запрос?

когда стоило последний сравнивать с более подходящим конкурентом – newQuery.
Не знаю, я все таки считаю что сравнивать с newQuery не корректно, newQuery просто транслирует php команды в SQL код, он не автоматизирует ничего и не упрощает
Артур Шевченко
24 февраля 2022, 19:05
+1
По-моему это не костыль, т.к. стандартные стили никуда не денутся и свои ты всё равно напишешь. А как вариант, моё предложение точно рабочее)))
Артур Шевченко
24 февраля 2022, 19:03
0
Я дал рекомендацию на случай когда ответ нужен быстро, а в остальном, с доводами согласен)))
Павел Гвоздь
24 февраля 2022, 19:02
0
Я не говорю, что ты должен его использовать. Я просто заметил, что ты сравниваешь getCollection, который предназначен не совсем для подобных дел, и свой быстрый билдер запросов, когда стоило последний сравнивать с более подходящим конкурентом – newQuery.

$q = $modx->newQuery('msProduct')
    ->leftJoin('modTemplateVar', 'price_opt_tv_name', 'price_opt_tv_name.name = "price_opt"')
    ->leftJoin('modTemplateVarResource', 'price_opt_table', 'price_opt_table.tmplvarid = price_opt_tv_name.id AND price_opt_table.contentid = msProduct.id')
    ->where([])
    ...
примерно так будет.
Pavel Zarubin
24 февраля 2022, 17:57
0
Я ж и попросил показать код на newQuery, мне не очень понятно зачем я должен его использовать, если я могу написать то же самое по объему и сложности на обычном SQL
Pavel Zarubin
24 февраля 2022, 17:55
0
Очевидно что не будет, а еще она также будет минимальна если все эти лефт джоины прописать руками в mysql, только вот newQuery так себе билдер
И код на newQuery будет скорее всего похож по количеству и структуре на выходной SQL
почему сравнивается getCollection, а не с newQuery
Потому что в случае с getCollection не надо джойнить tv, а можно их получить через getTVValue через модель собственно
Евгений Webinmd
24 февраля 2022, 17:39
+1
Я использовал такой вариант и он работает
'filterOptions' => '{ 
        "more_tpl" : "<button class=\"btn_more btn btn-secondary-black btn-animate\" type=\"button\"><span></span>Показать еще</button>"
    }'
Олег
24 февраля 2022, 17:34
0
Не хотелось бы костылить. Должны же быть цивилизованные способы! Через filterOptions тоже не получается.
Андрей
24 февраля 2022, 17:31
0
Я к сожалению не программист, но сегодня опубликовали в официальном сообществе информацию про API.

Не знаю, к этому относится или нет, но вот
t.me/toncoin_rus

Последний пост (не реклама, разумеется)
Павел Гвоздь
24 февраля 2022, 17:29
0
Компонент Битрикс CMS для приёма оплаты в TON Coin взаимодействует с мерчантом tegro.money/, а конечно же не напрямую с блокчейном TON. Поэтому здесь работа примерно также, как и с другими мерчантами, через API сервиса должна быть налажена.
Павел Гвоздь
24 февраля 2022, 17:23
+4
Я задавал вопрос именно в контексте разницы скорости, а не удобства, ибо думается мне, что разница в скорости с твоим решением либо будет минимальна, либо вообще её не будет.
Pavel Zarubin
24 февраля 2022, 17:20
0
Я честно говоря уже настолько долго не работал с modx что понятия не имею что за newQuery, если есть возможность и время, я был бы рад увидеть пример подобного запроса на newQuery, если там надо руками джойнить таблицы с тв, то какой в нем смысл по сравнению с написанием обычного SQL?
Главная причина почему пришлось писать билдер, это адская структура таблиц тв полей и сложность джоина каждого из параметров
Артур Шевченко
24 февраля 2022, 17:19
0
Ну ты же знаешь как открыть консоль в браузере? Найди на вкладке Элементы в разметке нужную кнопку, посмотри какие у неё классы и стилизуй.
Павел Гвоздь
24 февраля 2022, 17:16
0
Прирост скорости по сравнению с $modx->getCollection() более чем в 10 раз
А почему сравнивается с getCollection, а не с newQuery?