30 апреля 2019, 10:02 Добавить какие-либо нецифровые символы в возможные значения TV, чтобы прописывалось, к примеру, так:_120_ _112_ Ну и в вызове: &tvFilters=`my_filter==%_[[+id]]_%` Вопросы / Условия для фильтра по TV (tvFilters) 6 0
26 апреля 2019, 18:07 Если у Вас robots как ресурсы, заморозьте им URI. Вопросы / robots, sitemap и мультиконтекстные сайты 3 +1
25 апреля 2019, 09:56 Сниппет ctxname: <?php if(!$ctx = $modx->getObject('modContext', array('key' => $input))) return $input; return $ctx->get('name'); Использовать как модификатор: [[*context_key:ctxname]] или {$_modx->resource.context_key | ctxname} Вопросы / Как вывести имя текущего контекста? 4 +1 1
14 апреля 2019, 12:22 Проверьте вывод [[*TovarRelated]] на странице статьи — там pagetitle товаров выводятся слитно, а не через разделитель ||, который Вы используете в getMyResources на пятой строке. Укажите у этой TV тип вывода «Разделитель», поставьте в качестве него запятую и используйте ее в explode. Но вообще все можно упростить. Сниппет getrel: <?php $titles = explode(',', $input); $ids = array(); foreach($titles as $title){ if(!$prod = $modx->getObject('modResource', array('pagetitle' => $title))) continue; $ids[] = $prod->get('id'); } count($ids) > 0 ? $out = implode(',', $ids) : $out = 9999999; return $out; Вызов в шаблоне статьи: [[msProducts? &tpl=`gridProductTpl` &limit=`4` &parents=`10` &resources=`[[*TovarRelated:getrel]]` ]] Вопросы / msproducts вывести товары из TV списка 2 +1
12 апреля 2019, 15:07 Сделайте копию чанка tpl.ms2Gallery и настройте его как нужно. Новый чанк укажите в вызове в параметре &tpl. Вопросы / Изменить вид слайдера галереи ms2gallery 2 0
08 апреля 2019, 13:12 Если эти значения используются только для вывода на странице товара или в чанках, достаточно просто указать ID нужных ресурсов-цветов через || (если нет настроенного разделителя): 12||13||14||15Если разделитель указан, то через него. В случае фильтрации или каких-либо выводов ресурсов с учетом значения данного параметра, надо не указывать значения по умолчанию, а всё писать в базу. Для этого создайте плагин на событие onDocFormSave, где пишите нужные данные через ||: <?php if(!$template = $resource->get('template')) return; if($modx->event->name == 'onDocFormSave' && $mode == 'new' && $template == 5) { // Вместо 5 укажите ID шаблона товара $resource->setTVValue('colors', '12||13||14||15'); } Вопросы / Значение по умолчанию checkbox 1 0
07 апреля 2019, 19:15 В чанке doc-section так parents должен быть таким: &parents=`[[+id]]` Вопросы / getResourcess внутри getResourcess 4 +1
02 апреля 2019, 20:28 Создайте плагин, в котором получайте значение TV и удаляйте директорию. Если на удаление ресурса, то повесьте плагин на событие OnDocFormDelete, если на очистку корзины, то на OnBeforeEmptyTrash. В первом случае есть объект ресурса и значение его TV можно получить через: $resource->getTVValue('tvname'); Во втором — есть массив ID удаляемых ресурсов, которые можно использовать для получения объектов и дальше как в первом варианте. Вопросы / Можно ли при удалении ресурса настроить удаление папки с файлами? 2 +1 1
25 марта 2019, 11:00 Сделайте плагин на событие msOnBeforeAddToCartToCart Вопросы / Добавление товара в корзину с увеличением цены 2 0
23 марта 2019, 11:36 Расширьте класс msOrderHandler, к примеру, так. Вопросы / Пункты "Цена", "Цена доставки". 13 0
22 марта 2019, 19:04 Если написано «плагин», значит надо создать именно плагин ). Вот рабочий: <?php if($modx->event->name == 'xLikeOnVote'){ $tvid = 5; //тут вместо 5 - ID TV "like" $tvo = $modx->getObject('modTemplateVarResource', array('tmplvarid' => $tvid, 'contentid' => $parent )); if($tvo){ $tvo->set('value', $rating); }else{ $tvo = $modx->newObject('modTemplateVarResource', array( 'tmplvarid' => $tvid, 'contentid' => $parent, 'value' => $rating )); } $tvo->save(); } Обратите внимание на комментарий на третьей строке — там нужно поставить ID Вашей TV. Ну и на вкладке «Системные события» не забудьте отметить флажок xLikeOnVote Вопросы / Cортировка тикетов по голосам like dislike 28 0
22 марта 2019, 18:27 Можете xLike поставить — он тоже умеет в TV писать (в конце пример плагина). Вопросы / Cортировка тикетов по голосам like dislike 28 0
22 марта 2019, 18:05 Э… а Вы TV с шаблоном тикетов вообще связали? Вопросы / Cортировка тикетов по голосам like dislike 28 0
22 марта 2019, 17:41 Кликните по «Предложения». Справа откроется редактор, внизу будет таблица с тикетами и там Правый клик » Изменить: Там вкладка Дополнительные поля (TV), на которой будет like: И почитайте документацию — там много интересного )). Вопросы / Cортировка тикетов по голосам like dislike 28 0
22 марта 2019, 17:30 Они никак не связаны. У Вас что в TV-шках? Проверили, значения там прописаны? Я просто создал TV like и вбил туда 1 и 2, которые для теста вывожу рядом с заголовком: Вопросы / Cортировка тикетов по голосам like dislike 28 0
22 марта 2019, 17:17 А что там показывать — он такой как я выше написал: Вывод, если направление ASC: Вывод, если DESC: В запросе сортировка есть: Вопросы / Cортировка тикетов по голосам like dislike 28 0
22 марта 2019, 16:59 Проверил у себя, все работает. Если дадите доступ в админку (почта в профиле), гляну. Вопросы / Cортировка тикетов по голосам like dislike 28 0
mxBackup — обезличенные копии MODX в пару кликов Ещё нет, я там разом почти полтора десятка пакетов выложил модератор, вероятно, а шоке.
Gallery3x 3.4.0 - вставка галерей прямо из визуального редактора (CKEditor и TinyMCE RTE) Здравствуйте. Есть консольный скрипт Вот почитайте: docs.ivan345.com/books/gallery3x/page/import-ms2galleryphp
[mSync] Новая версия синхронизации с 1С Всем привет. В какой то момент начали сыпаться ошибки: Error 23000 executing statement: INSERT INTO `modx_msync_products` (`product_id`, `uuid_1c`) VALUES ...
Checkbox для модального окна Они не отключены, они платные, чтобы писали только те, кому действительно очень надо. Когда бесплатно люди начинают думать, что я им должен.
[SendIt 2.6.0] Анализ поведения пользователя для защиты от спама (невидимая капча)... Здравствуйте. Делаю личный кабинет на Sendit и со сбросом пароля возникли проблемы. Можете подсказать, в чем ошибка? Список вопросов в одноименном разделе на modx.pro пока пуст, и,...
Minishop + честный знак (продажа маркированной продукции) В нашем случае мы решили убрать всю логику по маркировке сайта.
MiniShop3 - Не выводятся товары дополнительных категорий @SYAN ваша указанная проблема исправлена еще до версии 1.2.3 @Павлик Мышкин завел: github.com/modx-pro/MiniShop3/issues/480 github.com/modx-pro/MiniShop3/issues/481Исправим в б...
Ну и в вызове:
Использовать как модификатор:
Укажите у этой TV тип вывода «Разделитель», поставьте в качестве него запятую и используйте ее в explode.
Но вообще все можно упростить. Сниппет getrel:
Вызов в шаблоне статьи:
Новый чанк укажите в вызове в параметре &tpl.
Если разделитель указан, то через него.
В случае фильтрации или каких-либо выводов ресурсов с учетом значения данного параметра, надо не указывать значения по умолчанию, а всё писать в базу. Для этого создайте плагин на событие onDocFormSave, где пишите нужные данные через ||:
Если на удаление ресурса, то повесьте плагин на событие OnDocFormDelete, если на очистку корзины, то на OnBeforeEmptyTrash.
В первом случае есть объект ресурса и значение его TV можно получить через:
Во втором — есть массив ID удаляемых ресурсов, которые можно использовать для получения объектов и дальше как в первом варианте.
Вот рабочий:
Обратите внимание на комментарий на третьей строке — там нужно поставить ID Вашей TV.
Ну и на вкладке «Системные события» не забудьте отметить флажок xLikeOnVote
Справа откроется редактор, внизу будет таблица с тикетами и там Правый клик » Изменить:
Там вкладка Дополнительные поля (TV), на которой будет like:
И почитайте документацию — там много интересного )).
Я просто создал TV like и вбил туда 1 и 2, которые для теста вывожу рядом с заголовком:
Вывод, если направление ASC:
Вывод, если DESC:
В запросе сортировка есть:
Если дадите доступ в админку (почта в профиле), гляну.