Как переопределить шаблон блога понятно.. Но, как подгружать шаблон материала, соответствующий именно переопределенному шаблону блога не очевидно..
Я сделал так.
В папке шаблона переопределил шаблон блога:
шаблон/html/com_content/category/shop.xml шаблон/html/com_content/category/shop.php шаблон/html/com_content/category/shop_item.php
Далее, создал пункт меню для этого шаблона.
Теперь, для раскладки article я создал 2 копии файла
шаблон/html/com_content/article/default.php
Для общего случая файл
шаблон/html/com_content/category/default_all.php
И для шаблона категории shop
шаблон/html/com_content/category/default_shop.php
А содержимое файла defaul.php я заменил на следущее
defined('_JEXEC') or die; $active = JFactory::getApplication()->getMenu()->getActive(); $tmp = explode(':', $active->query['layout']); $layout = $tmp[1]; if(empty($layout) || $layout == 'blog'){ $layout = 'all'; } echo $this->loadTemplate($layout);