Developer
подскажите, как сделать в админке настройки для определённого поля для шапки?
т.е. есть чанк header, как сделать редактируемое поле где-то в админке в чанке?
Артур
Артур
Иван
Системные настройки, clientConfig
Developer
К любому
это же неправильно, получается если на сайте 100 страниц, тогда нужно для каждой страницы прописывать каждый раз новое поле при изменении
Anonymous
Может, он для старой версии PHPStorm?
Anonymous
У меня 2021.1.1
Developer
Иван
Anonymous
Есть вопрос.
Я использую fenom.
Конструкция
@CODE: и тут плейсхолдер
работает только со сниппетами pdoTools? А с getImageList от MIGX, например, не будет работать, верно?
Я пытаюсь такое написать, но не получается:
{'getImageList' | snippet : [
'tvname' => 'itemsReviews',
'tpl' => '@CODE: <div class="review-item">'~{$idx}~'></div>',
...
]}
То есть я через fenom пытаюсь получить плейсхолдер idx от getImageList (сниппет от MIGX).
Иван
Иван
https://docs.modx.pro/komponentyi/pdotools/parser#%D0%92%D1%8B%D0%B2%D0%BE%D0%B4-MIGX-%D1%87%D0%B5%D1%80%D0%B5%D0%B7-fenom
Anonymous
Зачем тут getimagelist
Я знаю, что можно без него - через цикл. Но тогда к картинкам он не будет подставлять путь к источнику файлов. Мне это не очень нравится. Да и я привык использовать getImageList. Да и просто вопрос касается fenom. Я хочу лучше узнать, как он работает. Я правильно понимаю, что работает он только со сниппетами pdoTools?
Иван
Anonymous
Если так писать [[+idx]], то подставится. Но мне хочется через fenom подставить. Как это сделать?
Anonymous
Ведь плохо смешивать два синтаксиса.
Иван
{foreach $_modx->resource.resourcealbum | fromJSON as $item} {set $path_slide = 'assets/resourceimages/'~$_modx->resource.id~'/' ~$item.image}
Anonymous
А как через сниппет подставить-то? Про цикл я же уже написал выше.
Anonymous
Я хочу узнать, действительно ли fenom работает только с pdoTools
Anonymous
Иван
Иван
И все выводится
Anonymous
Вместо [[+idx]]?
Иван
В forech
Иван
Я для фенома написал
Anonymous
Я для фенома написал
'tpl' => '@CODE: <div class="review-item">отзыв '~{as $idx => $item}~'</div>',
Иван
Блин....
Иван
Я же выше написал.
Anonymous
Не работает то, что ты написал. У меня просто белая страница выводится.
Иван
Anonymous
Где ошибка?
Артур
Где ошибка?
Ты журнал ошибок посмотри там написано
Anonymous
Я же написал, что хочу через сниппет вывести, а не через цикл. Чтобы лучше понять, как работает fenom. И работает ли он с другими сниппетами (не с pdoTools).
Anonymous
Третий раз уже
Anonymous
Я знаю, что можно без него - через цикл. Но тогда к картинкам он не будет подставлять путь к источнику файлов. Мне это не очень нравится. Да и я привык использовать getImageList. Да и просто вопрос касается fenom. Я хочу лучше узнать, как он работает. Я правильно понимаю, что работает он только со сниппетами pdoTools?
Anonymous
Я хочу узнать, действительно ли fenom работает только с pdoTools
Иван
Иван
С нее начните и много вопросов отпадет
Иван
Anonymous
Danil
Скиньте пожалуйста канал с работой модекса
Артур
Anonymous
Есть товары. У них есть картинки. Превью конкретного размера я не генерировал. Например, 150x150. Просто залил картинки и все. Какие размеры у картинок были, такие и сгенерировались, как я понял.
Как теперь вывести плитку товаров с картинками?
Плитка выводится через msProducts. Но как туда картинки добавить?
Я нашел, что надо использовать параметр includeThumbs. Я написал туда 150x150. Потом в чанке написал так: [[+150x150]]. Картинки не выводятся.
Anonymous
В документации написано:
Список размеров превьюшек для выборки, через запятую. Например: "120x90,360x240" дадут плейслолдеры [[+120x90]] и [[+360x240]]. Картинки должны быть заранее сгенерированы в галерее товара.
Я ничего заранее не генерировал. Товаров очень много, чтобы проходиться по ним и генерировать. Да и место на хостинге это займет. Можно вывести то, что есть?
Anonymous
Такие размеры, которые есть.
Артур
Такие размеры, которые есть.
При установке minishop2 добавляется новый источник файлов. Вот в его настройках и можно задать нужные размеры. Генерируются превью автоматически при загрузке файлов в галерею товара. Соответственно плейсхолдеры будет такими какие размеры задашь.
Anonymous
Anonymous
Почему pdoResources вызывается кешированным (см. примеры в документации: https://docs.modx.pro/komponentyi/pdotools/snippetyi/pdoresources)
А msProducts - некешированным (https://docs.modx.pro/komponentyi/minishop2/snippetyi/msproducts)?
Anonymous
Кешировать надо тогда, когда контент страницы всегда один и тот же. А запрещать кешировать - когда контент разный.
В pdoPage контент будет разный - в зависимости от GET параметров. А в msProducts то почему он разный?
Anonymous
Кто-нибудь может помочь? Я в сниппете написал:
<?php
require_once $_SERVER['DOCUMENT_ROOT'] . '/ELEMENTS/SNIPPETS/my_snippet.php';
Ставлю точку останова на первую строку в файле my_snippet.php. Она срабатывает, когда сниппет вызывается из шаблона. А когда из чанка - не срабатывает.
Если перед require_once написать "return '123';" , то срабатывать будет еще и в чанке.
Anonymous
Я вытащил код сниппета из файла my_snippet.php и написал вместо require_once. То есть просто в MODX. Как обычно сниппеты создаются. Сниппет сработал правильно и из чанка в том числе.
Anonymous
Кто-нибудь сталкивался?
Не работает require_once в некоторых случаях. Почему?
Anonymous
Если сделать статичным сниппет, то работает.
Алексей
Anonymous
в error.log пусто.
Anonymous
Чанк у меня вызывается через вызов {'!msProducts' | snippet : [ ... ]}
Алексей
ну не важно что там в логах. почему вы именно так делаете?
require_once $_SERVER['DOCUMENT_ROOT'] . '/ELEMENTS/SNIPPETS/my_snippet.php';
Anonymous
Anonymous
Я попробовал вместо $_SERVER... написать MODX_BASE_PATH - то же самое.
Anonymous
Это баг MODX
Алексей
Алексей
Это баг MODX
нет. Вы что-то не так делаете и не понимаете идеологию MODX
Anonymous
где вы вызываете данный сниппет с require_once
покажите его вызов.
В чанке, который вызывается через сниппет msProducts.
{'!msProducts' | snippet : [
'parents' => 2,
'limit' => '4',
'includeThumbs' => 'small',
'resources' => '-{$_modx->resource.id}',
'tpl' => '@FILE:chunks/productCard.tpl'
]}
Алексей
в чанке. покажите вызов снипета в чанке.
Anonymous
в чанке. покажите вызов снипета в чанке.
<a data-id="{$id}" href="{'getMyUrl' | snippet : ['id' => $id]}" class="product-card__title">{$pagetitle}</a>
Anonymous
data-id - все правильно выводит. А в href пустота
Алексей
так. чудесно.
А getMyUrl - это у вас require_once ???
Anonymous
Да, я только что переименовал его
Алексей
Хорошо.
Алексей
А что если я скажу, что сниппеты это своего рода функции в MODX?
Anonymous
Если поставить return require_once, то он будет возвращать 1.
Алексей
Вы с php давно?