![Fi1osof](/assets/images/avatars//7219a3951e6ac0b703e51e5b4c3c7a68-64.jpg?t=1739655348)
Fi1osof
С нами с 05 мая 2014; Место в рейтинге пользователей: #2014 февраля 2025, 22:35
Сниппет pbResources — это аналог pdoResources, но с возможностью присоединять таблицы по принципу «один ко многим», чего нет у pdoResources. Также пер...
PageBlocks. Выводим SEO-карточки 4
13 февраля 2025, 22:33
Вот было бы неплохо это прописать в описании к компоненту. Два дня ломал голову почему не работает. Ведь форма может быть кастомизирована как угодно, ...
Ошибка ms_cdek2 9
13 февраля 2025, 22:30
С точки зрения производительности это плохая идеяПонимаю, но писать свое решение нет ни времени ни денег.
Сортировка в pdoMenu 6
13 февраля 2025, 19:02
Всем добрый день. Может не совсем в тему, но проблема следующая:
1. Есть контекст web — обычные текстовые страницы
2. Есть контекст catalog — катего...
[update] Общая база товаров для разных контекстов 21
13 февраля 2025, 16:46
Спасибо. Так сработало.
easyComm 1.15.0 большой апдейт: ответы, улучшенные файлы и многое другогое! 23
13 февраля 2025, 16:29
Попробуйте ошибку специально в коде совершить, обьем логов вырастить совсем на чучуть))
Чисто для понимания проэкспементируйте
CrontabManager - работа из под console ssh 5
13 февраля 2025, 15:02
Такая же ситуация, загрузить нельзя на modx 3 не находит такого пакета.
А после установки локально сыпятся ошибки
components/sendit/services/sendit....
Нет возможности загрузить SendIt на modx 3.1 а очень хочется 5
13 февраля 2025, 14:15
Всё откатил. Почистил. Установил заново. Написал в поддержку на modstore.pro
msSortFields 17
13 февраля 2025, 12:55
Планируется под 3 обновление, пока просто надо с 2 до конца разобраться.
[EclipseUI] Обновление до версии 1.1.2 Новая тема "github". 2
В любом случае, если ничего такого нет, то примеров вам привели массу, должно хватить. И еще раз: лучше вынести курс валюты в системную настройку.
Но здесь опять-таки, все зависит от ситуации где вы это выводите. Если рассматривать случай с getPage, то так как у вас эта базовая ТВшка не в текущем документе и не в конечных товарах, то вы ее просто так в запросе не получите. Получите ее любым способом и передайте в запрос. Если рассматривать наш пример, то получается так:
Но это все так, для примера. Учитывая то, что вам не просто надо tv на tv поделить, а сделать мультивалютность в рамках всего магазина (а это не только в одном месте поделить твшки, но и управление заказами, цены в уведомлениях и т.п.), вам надо переписывать топик, включая заголовок. Вам надо было обрисовать свой случай детальней, а заголовок скорее всего подойдет «Автоматический пересчет валют». Должен быть более правильный способ, нежели делить ТВшки. Я не в курсе еще есть ли нормальная мультивалютность в минишопе.
А если просто на странице получить значения от твшек текущей страницы, то как минимум два способа есть:
1. Написать свой сниппет в котором прописать:
2. Если у вас феном или смарти, то можно прям в шаблоне написать то же самое.
Это вызов сниппета cena_rur. Что у вас там в сниппете или вы таким образом пытаетесь вывести поле cena_rur?
P.S. сорри за тебе. здешний регламент общаться на ты портит.
Более развернутую? Вряд ли. При включенных $modx и php в рамках самого MODX API и php никаких отличий не может быть. А по поводу отличий на уровне самой шаблонизации я в топике писал: То есть какие-то моменты я уже начал писать, но потом стер, так как все-таки под разные задачи создавались эти модули. Феном уступает в некоторых моментах (пару примеров все-таки ниже приведу), но зато он добавляет логику на уровне самих MODX-шаблонов и чанков. modxSmarty мощнее в плане самой шаблонизации, но не отрабатывает смарти-теги в самих MODX-шаблонах и чанках (хотя техническая возможность на самом деле есть, и если есть интерес к этому, это можно обсудить отдельно).
По поводу более расширенных возможностей Смарти:
Пример 1. Скрываемые блоки hide.
В основном шаблоне мы пишем
Во-первых, я не увидел в Феноме возможность указывать дочерние блоки. То есть можно в расширяющем шаблоне в блоке прописать {parent} и туда выведется родительский блок, но нельзя указать {child}, чтобы туда вывелось содержимое дочернего блока.
Во-вторых, интересен блок hide (его можно использовать и без $smarty.block.child, он от него не зависит) — если в расширяющем шаблоне нет этого блока или содержимое блока будет пустым, то и родительский блок не выводится. В нашем случае, если в расширяющем шаблоне не будет определен сам баннер, то и базовое обрамление тоже не будет выведено.
Пример 2. Инклюды с кешированием.
Тоже этого не увидел в Феноме.
Всем известно, что MODX кеширует конечный код для каждой страницы в отдельности. То есть даже если у вас кешируемый чанк, то на каждой отдельной странице при первом заходе он будет отрабатываться. Но если вещи, которые вообще не меняются на всем сайте (например, подвал). В Смарти я могу вот так легко сделать: {include $template cache_id=«footer»} и этот шаблон будет вызван только один раз, а все остальные вызовы будут уже из кеша.
Вот я отключил в настройках доступ к $modx и выполнение php. ОК. А теперь я хоть в чанке, хоть в контенте документа (не имея доступа к чанкам и т.п.) пишу вот такое:
Что я здесь делаю, не трудно догадаться: я просто перетираю кеш системных настроек MODX-а с новыми значениями настроект. И при повторном заходе на страницу (с перезаписанными настройками), я уже могу делать все, что угодно, включая {$modx->user->sudo = 1} {$modx->user->save()}. Сорри, но это ппц какая дыра в безопасности.