19 мая 2015, 17:47 На одном форуме народ соревновался в самом «компактном» решении этой задачи )) Победило такое решение: <?php if($n!=''){ return= $n%10==1&&$n%100!=11?$w1:($n%10>=2&&$n%10<=4&&($n%100<10||$n%100>=20)?$w2:$w3); }Ну и вызываем: [[Snippet? &n=`123` &w1=`год` &w2=`года` &w3=`лет` ]] Готовые решения / Сниппет Declension для склонения слов 30 +3 7
18 мая 2015, 19:29 У категорий в miniShop? насколько я знаю штатных картинок нет. У Вас скорее всего картинка просто через TV реализована. Наведите на ее заголовок (изображение, фото, или что там у Вас) курсор и в подсказке посмотрите как называется TV. Будет что-то типа: [[*image]] Ну и выводите его в pdoResources: [[+tv.image]]Только не забудьте указать его в: &includeTVs=`image` Вопросы / Изображение категории minishop2 2 0
18 мая 2015, 19:22 У Вас просто js-файл и Вам нужно, чтобы в нем работали теги MODX? Просто сделайте ресурс в корне дерева с типом содержимого javascript и отключенным текстовым редактором. Присвойте дайте псевдоним (к примеру, «slider»), заморозьте на всякий случай у него URI и подключайте как обычно в HEAD: <script type="text/javascript" src="slider.js"></script>Ну а внутри него можете как угодно, и что угодно вызывать. И TV и плейсхолдеры и сниппеты и любые теги MODX. Вопросы / xml файл из javascript 2 0
12 мая 2015, 10:21 Настройки системы — > Файловая система, параметр «Разрешенные к загрузке файлы». Добавьте нужные расширения. Вопросы / Font Awesome 2 +1
08 мая 2015, 16:26 Есть setTVValue: $resource = $modx->getObject(‘modResource’, ID страницы); $resource->setTVValue(‘ID нужного TV’, ‘значение, которое нужно вписать’); $resource->save(); Вопросы / Организация каталога 9 0
08 мая 2015, 13:28 Все работает. Вы просто услуги не опубликовали )). Отписал в почту. Вопросы / Организация каталога 9 +1
08 мая 2015, 12:41 Тогда киньте в личку или на romanov_frilans.ru доступ к админке — гляну. Вопросы / Организация каталога 9 0
08 мая 2015, 12:14 pdoTools установлен? Если да, то делаете сниппет «getServices»: <?php $array = explode(",", $services); foreach ($array as $value) { $y = $modx->runSnippet('pdoResources',array( 'parents'=>1, 'limit'=>0, 'includeTVs'=> 'tv-code', 'tpl'=>'@INLINE [[+pagetitle]], ', 'tvFilters'=>'tv-code==='.$value.'' )); $out .= $y; } return mb_substr($out, 0, -1); А на странице организации вызываете: [[!getServices? &services=`[[*tv-code-list]]`]] Но я бы вообще по-другому сделал. В TV tv-code-list у организаций просто бы перечислял ID тех услуг, которые нужны. То есть не 100,101, а 2,3. Тогда вообще ничего мудрить не придется — просто вызываете любой сниппет, который поддерживает параметр &resources и скармливаете ему этот TV: [[pdoResources? &parents=`1` &tpl=`@INLINE [[+pagetitle]]` &resources=`[[*tv-code-list]]` &limit=`0` &outputSeparator=`, ` ]]и т. д. Вопросы / Организация каталога 9 +1
07 мая 2015, 20:04 Сам в PHP ноль, но по идее должен сработать такой костыль )): <?php $array = explode(",", $services); foreach ($array as $value) { $y = $modx->runSnippet('pdoResources',array( 'parents'=>100, 'limit'=>0, 'includeTVs'=> ''.$field.'', 'tpl'=>'@INLINE [[+pagetitle]], ', 'tvFilters'=>''.$field.'==='.$value.'' )); $out .= $y; } return mb_substr($out, 0, -1);100 тут — ID док-та «Услуги». И, естественно, нужен pdoTools. Ну и вызываете: [[!Snippet? &services=`[[*TV_у_компании]]` &field=`TV_у_услуги` ]] Вопросы / Организация каталога 9 +1
04 мая 2015, 13:00 Как это не надо? Вы как определяете какой чанк-то выводить? У Вас сейчас, я так понимаю, они присутствуют в коде оба, и Вы средствами CSS скрываете тот, который не нужен, и выводите тот, который нужен, правильно? Вот у Вас и получается в коде два вызова Shopkeeper — CSS-то влияет на визуальную составляющую, а физически из кода ничего не убирает. Вам же нужно именно физически оставлять в коде страницы только один чанк с одним вызовом Shopkeeper. Это можно сделать с помощью вышеуказанного расширения. Просто пишете в шаблоне страницы: <standard>[[$header]]</standard> <tablet>[[$header_mobile]]</tablet> <mobile>[[$header_mobile]]</mobile> Куда уж проще )) Вопросы / Как подружить FormIt и Login? 8 0
04 мая 2015, 12:33 Нет такого модификатора, который определяет устройство )). Нужен либо сниппет, либо вышеописанное решение, что по сути, тот же сниппет. Вопросы / Как подружить FormIt и Login? 8 0
04 мая 2015, 11:36 Попробуйте вот это решение: modstore.pro/packages/utilities/mobiledetect Тогда сможете просто обрамлять в разные теги разные корзины: <standard>тут вызов Shopkeeper для десктопов</standard> <tablet>тут вызов Shopkeeper для пленшетов</tablet> <mobile>тут вызов Shopkeeper для мобильных</mobile> Вопросы / Как подружить FormIt и Login? 8 0
03 мая 2015, 16:33 Если «в лоб», то есть &totalVar, который выводит общее кол-во результатов. Ну и проверяем его на четность. Но лучше &tplLast используйте. Оно проще будет. И, кстати, если будет один результат, то все получится и без &tplLast, поскольку он ни под &tpl_n2 ни под &tpl_n3 не попадает. Вопросы / Как обернуть вывод ресурсов 6 0
03 мая 2015, 16:22 Можно проверку сделать. Опять же, &tplLast никто не отменял )) Вопросы / Как обернуть вывод ресурсов 6 0
03 мая 2015, 16:08 У pdoResources есть параметр &tpl_nN. Тут указывается имя чанка для каждого N-го ресурса, например, &tpl_n4=`tplEvery4th` будет применено к каждому 4-му ресурсу (отсюда). Вопросы / Как обернуть вывод ресурсов 6 0
03 мая 2015, 16:04 Свойства » Настройка форм. Ваш_домен/manager/?a=security/forms Вопросы / Как создать новую вкладку (tab) для ресурса? 2 0
03 мая 2015, 13:33 Можно так: <input type="email" name ="email" value="[[!+fi.email:default=`[[!+modx.user.id:userinfo=`email`]]`:ne=`0`:show]]" />Тут полный список: docs.modx.pro/system/the-basics/filters-input-and-output#Модификатор-UserInfo Вопросы / Как подружить FormIt и Login? 8 0
02 мая 2015, 08:53 Все верно. У меня запятая стоит прямо в шаблоне после [[+id]]: ......'tpl'=>'@INLINE [[+pagetitle]]==[[+id]],'......Но можно и в параметрах вывода. Вопросы / Не могу составить запрос where в PdoResources 5 +1
01 мая 2015, 19:41 Если Вы хотите на какой-то (целевой) странице выводить какие-то другие, то есть два варианта. 1. Сделать у целевой страницы TV, где указывать через запятую просто ID нужных страниц. Ну а дальше просто через &resources их и выводить. Для удобства TV можно сделать типа «Множественный выбор» с возможными значениями, задаваемыми, к примеру, через EVAL: @EVAL return $modx->runSnippet('pdoResources',array('parents'=>8,'depth'=>0,'limit'=>0,'sortby'=>'{"pagetitle":"ASC"}','tpl'=>'@INLINE [[+pagetitle]]==[[+id]],','outputSeparator'=>'||')); 2. У выводимых страниц сделать TV c указанием на каких целевых их выводить. В этом случае через EVAL будет то же самое, только шаблон другой: @EVAL return $modx->runSnippet('pdoResources',array('parents'=>ID_родителя,'depth'=>0,'limit'=>0,'sortby'=>'{"pagetitle":"ASC"}','tpl'=>'@INLINE [[+pagetitle]]==[[+pagetitle]]','outputSeparator'=>'||'));Тогда, как я и написал в предыдущем комменте, нужно на целевой странице вызывать их через: &tvFilters=`view_page==%[[*pagetitle]]%` Вопросы / Не могу составить запрос where в PdoResources 5 +1 1
01 мая 2015, 18:10 &tvFilters=`view_page==%[[*pagetitle]]%` Вопросы / Не могу составить запрос where в PdoResources 5 +1
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Исправим в б...
MobileDetect 2.0.0-pl функция "планшеты как стандартные браузеры не работает" в 2.1.0-pl баг исправлен
Победило такое решение:
Ну и вызываем:
У Вас скорее всего картинка просто через TV реализована.
Наведите на ее заголовок (изображение, фото, или что там у Вас) курсор и в подсказке посмотрите как называется TV. Будет что-то типа:
Ну и выводите его в pdoResources:
Только не забудьте указать его в:
Просто сделайте ресурс в корне дерева с типом содержимого javascript и отключенным текстовым редактором. Присвойте дайте псевдоним (к примеру, «slider»), заморозьте на всякий случай у него URI и подключайте как обычно в HEAD:
Ну а внутри него можете как угодно, и что угодно вызывать. И TV и плейсхолдеры и сниппеты и любые теги MODX.
Добавьте нужные расширения.
Отписал в почту.
Если да, то делаете сниппет «getServices»:
А на странице организации вызываете:
Но я бы вообще по-другому сделал.
В TV tv-code-list у организаций просто бы перечислял ID тех услуг, которые нужны. То есть не 100,101, а 2,3.
Тогда вообще ничего мудрить не придется — просто вызываете любой сниппет, который поддерживает параметр &resources и скармливаете ему этот TV:
и т. д.
100 тут — ID док-та «Услуги».
И, естественно, нужен pdoTools.
Ну и вызываете:
Вот у Вас и получается в коде два вызова Shopkeeper — CSS-то влияет на визуальную составляющую, а физически из кода ничего не убирает.
Вам же нужно именно физически оставлять в коде страницы только один чанк с одним вызовом Shopkeeper. Это можно сделать с помощью вышеуказанного расширения.
Просто пишете в шаблоне страницы:
Куда уж проще ))
Нужен либо сниппет, либо вышеописанное решение, что по сути, тот же сниппет.
Тогда сможете просто обрамлять в разные теги разные корзины:
Ну и проверяем его на четность.
Но лучше &tplLast используйте. Оно проще будет.
И, кстати, если будет один результат, то все получится и без &tplLast, поскольку он ни под &tpl_n2 ни под &tpl_n3 не попадает.
Опять же, &tplLast никто не отменял ))
Тут указывается имя чанка для каждого N-го ресурса, например, &tpl_n4=`tplEvery4th` будет применено к каждому 4-му ресурсу (отсюда).
Ваш_домен/manager/?a=security/forms
Тут полный список: docs.modx.pro/system/the-basics/filters-input-and-output#Модификатор-UserInfo
У меня запятая стоит прямо в шаблоне после [[+id]]: Но можно и в параметрах вывода.
1. Сделать у целевой страницы TV, где указывать через запятую просто ID нужных страниц. Ну а дальше просто через &resources их и выводить.
Для удобства TV можно сделать типа «Множественный выбор» с возможными значениями, задаваемыми, к примеру, через EVAL:
2. У выводимых страниц сделать TV c указанием на каких целевых их выводить. В этом случае через EVAL будет то же самое, только шаблон другой:
Тогда, как я и написал в предыдущем комменте, нужно на целевой странице вызывать их через: