Вывод контента c chekbox

Здравствуйте!

Помогите настройкой выводом контента на главной странице.

Имеется 3 контейнера все в 1 категории:
1: Фиксированный новость с изображением.
2: Старые фиксированный новость изображением.
3: Другие новости без фиксации.

Создал TV chekbox (fixed) c значением (да) для определения фиксации новости.

Как сделать чтоб:
1 контейнер отобрал последний новости если chekbox намечен.
2 контейнер отобрал старых новостей и показал последних 2 новостей.
3 контейнер отобрал новостей без фиксации.

Почитал инструкцию но не как доперло как надо настроит.

Использую
Modx 2.3.1
PdoTools
TITAN-UZ
11 августа 2014, 12:29
modx.pro
1
1 189
0

Комментарии: 6

Алексей Карташов
11 августа 2014, 18:32
+1
Дак вот же, в документации всё есть:
&tvFilters
Список фильтров по ТВ, с разделителями AND и OR. Разделитель, указанный в параметре &tvFiltersOrDelimiter представляет логическое условие OR и по нему условия группируются в первую очередь. Внутри каждой группы вы можете задать список значений, разделив их &tvFiltersAndDelimiter. Поиск значений может проводиться в каком-то конкретном ТВ, если он указан «myTV==value», или в любом «value». Пример вызова: &tvFilters=`filter2==one,filter1==bar%||filter1==foo`. Обратите внимание: фильтрация использует оператор LIKE и знак «%» является метасимволом. И еще: Поиск идёт по значениям, которые физически находятся в БД, то есть, сюда не подставляются значения по умолчанию из настроек ТВ.

Точно не помню, но вроде бы надо дополнительно нужные tv подключить к выборке:
&includeTVs
Список ТВ параметров для выборки, через запятую. Например: «action,time» дадут плейсхолдеры [[+tv.action]] и [[+tv.time]].

Т.е. вашем случае надо как-то так:
Фиксированные новости:
[[!pdoResource?
  ... здесь какие-то параметры выборки
  &parent=`здесь id-контейнера с новостями`
  &includeTVs=`fixed`
  &tvFilters=`fixed==1`
]]
Нефиксированные:
[[!pdoResource?
  ... здесь какие-то параметры выборки
  &parent=`здесь id-контейнера с новостями`
  &includeTVs=`fixed`
  &tvFilters=`fixed==0`
]]
Как-то так.

Что именно в рамках вашего сайта означает понятие «Старые новости» вы не уточнили, поэтому здесь помочь не могу)
    TITAN-UZ
    11 августа 2014, 19:17
    0
    [[!pdoResources? 
    &parents=`2,3` 
    &limit=`1` 
    &depth=`0` 
    &tpl=`fixedb`
    &includeTVs=`fixed,img`
    &tvFilters=`fixed=1`
    ]]
    работает

    [[!pdoPage? 
    &elementClass=`modSnippet` 
    &element=`pdoResources` 
    &parents=`2,3` 
    &limit=`20` 
    &pageVarKey=`page` 
    &depth=`0` 
    &tpl=`news` 
    &sortby=`menuindex` 
    &sortdir=`DESC`
    &includeTVs=`fixed,img`
    &tvFilters=`fixed=0`
    ]]

    не работает
      Алексей Карташов
      11 августа 2014, 19:57
      0
      Это у тебя невнимательность виновата)
      &tvFilters=`fixed=0`

      Надо два знака равно "==":
      &tvFilters=`fixed==0`
      и
      &tvFilters=`fixed==1`
        Василий Наумкин
        11 августа 2014, 19:57
        0
        &tvFilters=`fixed=0`
        Не может не работать, если нет физически значения в БД. А у ТВ такое бывает, если оно совпадает со значением по умолчанию.

        Лучше попробуй
        &includeTVs=`fixed`
        &where=`{"fixed:!=":0}`
      TITAN-UZ
      12 августа 2014, 10:14
      0
      С == вобще не работал до постинга проверил все варианты!

      Все таки fixed=0 и fixed=1 показывает только фиксированный новост :(

      &where=`{«fixed:!=»:0}` итог тот же
        TITAN-UZ
        21 августа 2014, 18:53
        0
        Решил проблему! Поставил селектбокс.
          Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
          6