Здравия желаю всем прочитавшим это. Суть проблемы такова. Поставил J! 3.0, сделал меню, залил контент, ассоциировал пункты меню с контетом соответственно. Всё хорошо, всё отлично. Добавил модуль, прописал отображение его только в одном пунтке меню (вкладка "Привязка к пунктам меню", выбрал влажок напротив нужного пункта меню, указав при этом привязку как "Только на указанных страницах"). Всё по логике должно быть отлично. Но! У меня же есть ещё модуль с поиском! И, как известно, при нажатии на кнопку поиска, юзера переносит уже на сам компонент поискового скрипта. Внимание, компонент! Не пункт меню. Как понимаю, это уже не в логике вышепроделанного "колдовства" с пунктами меню, ибо компонент - не меню, он не подчиняется ограничениям. И, естественно, модуль отображается. А значит, портит мне всю малину. Итак, как избавиться от этого? У меня появилась одна жестокая идея, как то не особо меня вдохновляющая - в шаблоне позицию <jdoc:include type="modules" name="ya_modul" /> обрамить в код, который берёт изначально $_SERVER['REQUEST_URI'], ищет в нём подстроку "/component/". Если таковая имеется, то нифига не происходит. Если же такой нет - то выводит jdoc:include. Мне кажется, что я занимаюсь в таком случае быдлокодерством. Подскажите как сделать это, если возможно, вообще не прибегая к программированию? Может я что то упустил?
Надо курить Itemid. К нему и привязываются модули. Если пункт меню назначен для этого компонента, то модуль будет отображаться ВО ВСЕМ компоненте, если только не будет переопределено другим Itemid (пунктом меню). Чтобы углядеть логику, надо выключать SEF-ссылки и смотреть на Itemid в ссылках. Advanced Module Manager в помощь.