Подскажите направление решения задачи!
        Всем привет! 
Возникла задача, ни когда с такой не сталкивался, даже не пойму с чего начать.
В общем есть сайт на котором следующая структура:
1) на станице ресурса Категории-1, так же выводился блок с «публикациями» и блок «примеры работ» относящиеся к «Категории-1»
С чего начать, где копать, какие компоненты использовать, даже представить не могу…
    
    
                                                                                
            Возникла задача, ни когда с такой не сталкивался, даже не пойму с чего начать.
В общем есть сайт на котором следующая структура:
Услуги
	Категория-1
	Категория-2
	Категория-3
Публикации
	Раздел (Категория-1 услуг)
		Тикет-1
	Раздел (Категория-2 услуг)
		Тикет-1
		Тикет-2
	Раздел (Категория-3 услуг)
		Тикет-1
		Тикет-2
		Тикет-3
Примеры
	Категория (Категория-1 услуг)
		Ресурс-1
		Ресурс-2
		Ресурс-3
	Категория (Категория-2 услуг)
		Ресурс-1
	Категория (Категория-3 услуг)
		Ресурс-1
		Ресурс-2Необходимо что бы:1) на станице ресурса Категории-1, так же выводился блок с «публикациями» и блок «примеры работ» относящиеся к «Категории-1»
С чего начать, где копать, какие компоненты использовать, даже представить не могу…
Комментарии: 12
                Вариант с тв-шками не подойдёт?            
                    
                Не рассматривал такой вариант, спасибо буду смотреть!
А подскажите пожалуйста компонент tickets так же можно фильтровать по тв?
                    А подскажите пожалуйста компонент tickets так же можно фильтровать по тв?
                Да можно для фильтра можно использовать прекрасное дополнение mSearch2            
                    
                А без mSearch2 твшками можно реализовать в Tickets?
            
                    
                mSearch2 — для фильтрации но можно делать и без него.            
                    
                Спасибо, буду изучать!            
                    
                Раз уж топик открыт, пока не закрыл!
Подскажите почему не срабатывает данная конструкция?
Но почему то на ресурсе с id == 3, все равно выводится меню, ведь должно все работать?
А и еще добавлю, данный код находится в
                    Подскажите почему не срабатывает данная конструкция?
{if $id == 3}
                    {$_modx->resource.content}
                {else}
                    {'!pdoMenu' | snippet : [
                        'parents' => $_modx->resource.id,
                        'level' => '1',
                        'tplOuter' => '@INLINE  <div style="padding: 15px; text-align: center!Important;">{$wrapper}</div>',
                        'tpl' => '@INLINE   <h2 style="padding: 15px; margin:0; display: inline-block;" class="text_bold text_size_h2">
                                                <a href="{$link}">{$menutitle}</a>
                                            </h2>{$wrapper}'
                    ]}
                    {$_modx->resource.content}
                {/if}Нужно что бы на странице с id == 3 выводился только [[+content]], а на другой странице выводилось меню с parent=idНо почему то на ресурсе с id == 3, все равно выводится меню, ведь должно все работать?
А и еще добавлю, данный код находится в
{extends 'file:templates/base.tpl'}
{block 'main'}
Тут код
{/block}            
                Заместо $id:
                    $_modx->resource.id            
                Сам решил!
                    {if $_modx->resource.id == 3}
                    {$_modx->resource.content}
                {else}
                    {'!pdoMenu' | snippet : [
                        'parents' => $_modx->resource.id,
                        'level' => '1',
                        'tplOuter' => '@INLINE  <div style="padding: 15px; text-align: center!Important;">{$wrapper}</div>',
                        'tpl' => '@INLINE   <h2 style="padding: 15px; margin:0; display: inline-block;" class="text_bold text_size_h2">
                                                <a href="{$link}">{$menutitle}</a>
                                            </h2>{$wrapper}'
                    ]}
                    {$_modx->resource.content}
                {/if}            
                Да, к слову, чтобы не плодить сущности, правильнее сделать так:
                    {if $_modx->resource.id == 3}
	{'pdoMenu' | snippet : [
		'parents' => $_modx->resource.id,
		'level' => 1,
		'tplOuter' => '@INLINE  <div style="padding: 15px; text-align: center!Important;">{$wrapper}</div>',
		'tpl' => '@INLINE   <h2 style="padding: 15px; margin:0; display: inline-block;" class="text_bold text_size_h2">
			<a href="{$link}">{$menutitle}</a>
		</h2>{$wrapper}'
	]}
{/if}
{$_modx->resource.content}            
                По поводу вашей задачи, я бы прибегнул к такому способу: если у вас прослеживается прямая зависимость от услуги к публикации/примеру, то можно, условно, создать 3 контекста (услуги, публикации, примеры). 
При создании ресурсов определенных шаблонов (категория услуги и страница услуги) в первом контексте, на событие OnDocFormSave и $mode == 'new', создавать аналогичные ресурсы с тем же названием в двух остальных контекстах. Код плагина будет примерно похож на данный.
Таким образом, можно или в автоматическом режиме в том же плагине проставлять id связанных ресурсов в тв-поля «основного», или ограничиться полным соответствием поля pagetitle для сопоставимых рубрик, и выводить «сопутствующие» рубрики уже по нему.
                    При создании ресурсов определенных шаблонов (категория услуги и страница услуги) в первом контексте, на событие OnDocFormSave и $mode == 'new', создавать аналогичные ресурсы с тем же названием в двух остальных контекстах. Код плагина будет примерно похож на данный.
Таким образом, можно или в автоматическом режиме в том же плагине проставлять id связанных ресурсов в тв-поля «основного», или ограничиться полным соответствием поля pagetitle для сопоставимых рубрик, и выводить «сопутствующие» рубрики уже по нему.
                Спасибо Максим, добавил в закладки, обязательно изучу!            
                    
                            Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.