Павел Романов

Павел Романов

С нами с 03 марта 2014; Место в рейтинге пользователей: #43
Павел Романов
26 января 2016, 14:46
0
Можно ссылку на сайт?
Павел Романов
26 января 2016, 14:33
0
Если Вы, находясь в его редакторе, кликните «Просмотреть», то он откроется?



Павел Романов
26 января 2016, 14:13
0
Согласен с Алексеем — где-то ошибка (ресурс опубликован, кстати?), но можете для чистоты эксперимента заморозить URI у него в настройках.
Павел Романов
26 января 2016, 12:22
+1
В шаблоне подкатегории ставите в самом начале:
[[+idx:is=`4`:then=`<обертка>`]]

В вызов добавляете
&countChildren=`1`

В шаблоне категории в конце после [[+wrapper]] добавляете:
[[+children:gt=`3`:then=`</обертка>`]]
Павел Романов
15 января 2016, 20:02
0
В вызове pdoMenu укажите
&parents=`0`
Павел Романов
15 января 2016, 17:52
0
Ух ))
&resources=`[[+parent:is=`12`:then=`13,14,15`]][[+parent:is=`24`:then=`25,26,27`]]`
Но это если в чанке-шаблоне.
На странице так:
&resources=`[[*parent:is=`12`:then=`13,14,15`]][[*parent:is=`24`:then=`25,26,27`]]`
Павел Романов
11 декабря 2015, 00:52
+1
Главное, не забудьте потом в вызове FormIt в валидации у поля прописать allowTags:
имя_поля:allowTags
Иначе все теги будут резаться.
Павел Романов
09 декабря 2015, 00:35
+1
Я сделал TV поле rating для шаблона товара и плагин на событие OnDocFormRender с проверкой товар это или нет (ID шаблона товара у меня 7):
<?php
if ($resource->get('template') == 7) {
	$thr = 'resource-'.$id.'';
	$pars = array (
		'thread'=> $thr,
		'tpl'=> 'rating-tv'
		);
	$rat = $modx->runSnippet('ecThreadRating',$pars);
	$rating = ceil($rat);
	$page = $modx->getObject('modResource', $id);
	$page->setTVValue('rating', $rating);
}
При открытии ресурса в редакторе ему автоматически прописывается в TV rating его рейтинг из таблицы компонента. Ну а дальше уже простая сортировка по TV.

В моем случае этого хватило, поскольку товары постоянно обновляются и менеджер сайта их открывает, но можно сделать по тому же принципу сниппет, который запускать по Cron.
Павел Романов
08 декабря 2015, 15:40
0
Да не за что )
К сожалению, не буду.
Павел Романов
08 декабря 2015, 15:30
0
Да, точно, опечатался ))
Убрать текущий можно так:
&resources=`-[[*id]]`
Павел Романов
08 декабря 2015, 15:21
0
Что выводит такая конструкция, если её прописать на странице «Аргус 1»?
[[*pagetitle:similar]]
Павел Романов
08 декабря 2015, 15:12
0
Тогда можно сделать такой сниппет:
<?php
$arr = explode(' ', $input);
$last = array_pop($arr);
unset($last);
return implode(' ', $arr);
Назвать его, к примеру, similar и в условии прописать:
&where=`{"pagetitle:LIKE":"%[[*pagetitle:similar]]%"}
Но тогда, естественно, не использовать пробелы в цифровых обозначениях. То есть «2А», а не «2 А», поскольку тут название разбивается именно по пробелам.
Павел Романов
08 декабря 2015, 14:55
0
Кстати да, об исходном условии-то мы и забыли )))
А у Вас все объекты называются по такому шаблону? То есть *****1, ***2, ****3 и т. д.?
Павел Романов
08 декабря 2015, 14:27
0
Что у Вас в чанке catalog_item?
Павел Романов
08 декабря 2015, 14:13
0
В контейнере с ID=1 действительно есть ресурсы?
Они опубликованы?
Павел Романов
08 декабря 2015, 14:12
0
Согласен с mekirile. Проверьте без условия, только sortdir уберите (он не нужен, поскольку уже прописан в sortby):
[[getResources?
        &limit=`15`
        &parents=`1`
        &sortby=`{"createdon":"DESC"}`
	&tpl=`@INLINE [[+pagetitle]]`
]]
Если так что-то выведет, то поставьте условие:
[[getResources?
        &limit=`15`
        &parents=`1`
        &sortby=`{"createdon":"DESC"}`
        &where=`{"pagetitle:REGEXP":"[[*pagetitle]]"}`
	&tpl=`@INLINE [[+pagetitle]]`
]]
Если результатов не будет замените параметр where на такой:
&where=`{"pagetitle:LIKE":"%[[*pagetitle]]%"}`
и естественно, пропишите свой &tpl.
Павел Романов
08 декабря 2015, 13:51
0
У Вас стоит сниппет msProducts? Нет. Значит и не надо его писать ).

Если у Вас установлен pdoTools, то в &element вообще ничего писать не нужно — по умолчанию используется сниппет pdoResources.

Если pdoTools не установлен, а есть getPage с getResources, то так:
[[!getPage?
        &element=`getResources`
        &limit=`15`
        &parents=`1`
        &sortby=`{"createdon":"DESC"}`
        &where=`{"pagetitle:REGEXP":"[[*pagetitle]]"}`
        &sortdir=`DESC`
        ]]
Павел Романов
08 декабря 2015, 12:41
+1
Также, только упростить немного ))):
[[!pdoPage?
.........
    &where=`{"pagetitle:REGEXP":"[[*pagetitle]]"}`
]]
Павел Романов
07 декабря 2015, 12:29
0
Через плюс ставится только в чанке-шаблоне вывода у сниппетов типа getResources и т. д. На самой странице, естественно, через [[*...

Можно и встроенными модификаторами, но Вам же нужно получить курс, т. е. значение TV у другого ресурса. Я не знаю установлен у Вас getResourceField или pdoTools, поэтому проще сделать вышеописанный сниппет.
А так-то да (если pdoTools стоит и включен новый парсер):
[[*cena_proekta_doma:div=`[[#****.cena_rur_auto]]`]]