Как выводить через pdoResources разные блоки?
Привет! Подскажите как через pdoResources выводить блоки разного размера?
Есть на сайте проекты, они реализованы следующим образом:
Чанк проектов
http://torrez.ru/project/
Но, на главной верстка немного отличается если посмотрите(либо можно глянуть здесь). Как можно через pdoResources сделать вывод на главной? Там разница лишь в классе col-md-3 col-sm-6 и col-md-6 col-sm-12
А на страничке проекты, класс тоже отличается, там у всех проектов которые добавляются, применяется класс col-md-4 col-sm-6
Есть на сайте проекты, они реализованы следующим образом:
Чанк проектов
<!-- main container -->
<div class="main-container portfolio-inner clearfix">
<!-- portfolio div -->
<div class="portfolio-div">
<div class="portfolio">
<!-- portfolio_container -->
<div class="no-padding portfolio_container clearfix">
[[pdoResources?
&parents=`[[*id]]`
&depth=`0`
&tpl=`tpl.project`
&includeTVs=`img`
&processTVs=`1`
]]
</div>
<!-- end portfolio_container -->
</div>
<!-- portfolio -->
</div>
<!-- end portfolio div -->
</div>
<!-- end main container -->чанк тпл проекта:<!-- single work -->
<div class="col-md-4 col-sm-6">
<a href="[[~[[+id]]]]" class="portfolio_item">
<img src="[[+tv.img:phpthumbof=`w=1000&h=1000&zc=1`]]" alt="[[+pagetitle]]" class="img-responsive" />
<div class="portfolio_item_hover">
<div class="portfolio-border clearfix">
<div class="item_info">
<span>[[+pagetitle]]</span>
<em>[[+introtext]]</em>
</div>
</div>
</div>
</a>
</div>
<!-- end single work -->на сайте это выглядит вот так:http://torrez.ru/project/
Но, на главной верстка немного отличается если посмотрите(либо можно глянуть здесь). Как можно через pdoResources сделать вывод на главной? Там разница лишь в классе col-md-3 col-sm-6 и col-md-6 col-sm-12
А на страничке проекты, класс тоже отличается, там у всех проектов которые добавляются, применяется класс col-md-4 col-sm-6
Комментарии: 21
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Либо можно сделать разные чанки и сделать вызов pdoResources через феном, записать параметры вызова как массив, в зависимости от страницы вызова подставлять нужный чанк.
Вопрос был — на главной выводится одно, на остальных страницах другое.
Должно работать.
Через стандартный парсер тоже можно вывести, но придется городить условия.
не работает, хотя в проектах все четко работает.
В данном вызове в параметр parents подставляется id текущей страницы, то есть если вызов на главной — идет запрос на дочерние страницы главной.
Т.е. нужно вставить в parents id страницы с проектами.
Теперь вопрос как на главной сделать вид отображения тот что в топике выше описывал или тут?
В чанке проверку на айди таким образом не работает:
сейчас вызов ресурса у главной вот такой:
Сейчас чанк «tpl.content» оформления проекта на главной имеет вид:
А чанк «content» всех проектов на главной такой:
Так тоже не работает
Давай так, чтобы не морочиться:
Для главной
Для остальных
Для главной чанк tpl.content_main
Для остальных чанк tpl.content
Для главной
gyazo.com/58670ffcb5a4d66bd622432a68d1490e
для страницы всех проектов
gyazo.com/0bca822faf33f197c8ee59f50e369ba7
Вот теперь нужно для чанка projects_main задать проверку на id?
Потому что, пока на главной все блоки выстраиваются одинаково по классу col-md-3 col-sm-6 так как у меня там указан конкретный id (8)
docs.modx.pro/components/pdotools/snippets/pdoresources смотри &toSeparatePlaceholders
Или же ты имеешь ввиду про лимит кол-ва блоков которое располагается на странице? Лимит я хочу выставить 5 блоков(последних проектов которые были добавлены) на главной, а на странице проектов сделать пагинацию через pdoPage, и там будет 9 блоков и внизу пагинация (пока еще не сделал правда, но это вроде не сложно). =)
&tpl_N Имя чанка для N-го ресурса, например, &tpl_4=`tpl4th` установит шаблон для 4-го ресурса.
&tpl_nN Имя чанка для каждого N-го ресурса, например, &tpl_n4=`tplEvery4th` будет применено к каждому 4-му ресурсу.
Ну и важно, какая пагинация, если ajax то чуть сложнее, т.к. может развалиться верстка с разноразмерными блоками (может развалиться, не значит что должна)
Но теперь ситуация следующая, которую хотелось бы решить.
Сейчас на главной странице у меня расположены 4 проекта.
Каждый ресурс, в данном случает проект, имеет чанк вывода tpl.project_main, у которого используется класс col-md-3 col-sm-6, кроме 3го ресурса, ему я задал другой чанк с классом col-md-6 col-sm-12. Через &tpl_N сделал это.
Вот для наглядности сделал скрин чтобы не запутаться:
увеличить
Так вот, эти блоки теперь заведомо выстраиваются таким образом
ссылка на фото
То есть 3й блок всегда большой, так как я ему дал класс необходимый, но хочу сделать чтобы этот 3 блок превращался в такой вид только когда добавлено 5 проектов.
Как реализовать так чтобы при добавлении нового блока менялся общий вид исходя из того какой это блок по счету и сколько блоков(то есть проектов) вообще.
То есть если мы добавили первый проект, он у нас один на странице, пусть будет в пол экрана, далее добавили 2й проект, так же в пол экрана, далее 3й в треть экрана, 4й в четверть, а при добавлении пятого вид становился бы таким:
t.me/user_shadow
косок условия из чанка обертки проектов:
Так же для 3го проекта использовался отдельный чанк с таким условием:
А чанк вывода всех проектов где происходит непосредственно сам подресурс: