Сделал свой шаблон полностью с нуля. В MainMenu есть пунк, который отображает шаблон блога категорий. При переходе в этот пункт, показывается заголовок страницы (componentheading). Соответственно, там есть несколько статей из этой категории, в каждой их них - ссылка "подробнее". Так вот, когда переходишь по этой ссылке, откравается сам материал, но заголовок страницы исчезает. Как сделать чтобы при переходе по ссылке "подробнее" заголовок страницы (тот который задаётся в настройке пункта меню - componentheading) оставался, ведь активный пункт меню не меняется, а остаётся тот же? Использовать заголовок материала (contentheading) не подходит - он нужен как есть. В настройках ничего подходящего не нашёл, предполагаю надо править в самой Джумле, например в com_content/views/category, только где точно и что именно? joomla 1.5.18
Если пункт меню выводит шаблон блога категории, то на странице по идее выводится не название пункта меню, а название категории. В таком случае чтобы на страницу полной новости добавить вывод имени категории нужно добавить в нужное место код <?php echo $this->escape($this->article->category); ?> Править файл: \components\com_content\views\article\tmpl\default.php
Спасибо за ответ, но это не совсем то что мне нужно. Очевидно, я не ясно выразился. Название категории, в которую входят материалы и так отображается, если в настройках пункта меню или самого материала (Параметры -> Компонент) установить опцию "Название категории = да". Но как раз это мне и не нужно, так как это название отображается в каждом материале в режиме блога. В настройках каждого пункта меню есть опция (Параметры -> Система) "Заголовок страницы", где он собственно и задаётся. Ему соответствует класс .componentheading и он выводится один раз на странице, а не в заголовке каждого материала (в режиме блога). Вот его код: (components/com_content/views/article/tmpl/default.php) Код (PHP): <?php if ($this->params->get('show_page_title', 1) && $this->params->get('page_title') != $this->article->title) : ?> <div class="componentheading<?php echo $this->escape($this->params->get('pageclass_sfx')); ?>"> <?php echo $this->escape($this->params->get('page_title')); ?> </div> <?php endif; ?> Вот этот самый 'page_title' отображается, когда материалы в блоге или когда просто один материал, но когда переходишь по ссылке "подробнее", он пропадает.
Понял. В таком случае в файл \components\com_content\views\article\tmpl\default.php добавляем в нужное место Код (PHP): <?php $menu = & JSite::getMenu(); $handtitle = new JParameter( $menu->getActive()->params ); echo $handtitle->get( 'page_title' ); ?>
Огромное спасибо за помощь - всё получилось. Правда немного изменил код, иначе в стандартном шаблоне материала (ну то есть на всех страницах, где выводится всего один материал) заголовок отображается дважды. Вот что получилось: в файле templates/мой_шаблон/html/com_content/article/default.php (вынес файл в шаблон) Код (PHP): <?php if ($this->params->get('show_page_title', 1) && $this->params->get('page_title') != $this->article->title) : ?> <div class="componentheading<?php echo $this->escape($this->params->get('pageclass_sfx')); ?>"> <?php $pagetittle = $this->escape($this->params->get('page_title')); echo $pagetittle ?> </div> <?php endif; ?> <?php $menu = & JSite::getMenu(); $handtitle = new JParameter( $menu->getActive()->params ); if ($pagetittle == "") { ?> <div class="componentheading<?php echo $this->escape($this->params->get('pageclass_sfx')); ?>"> <?php echo $handtitle->get( 'page_title' ); ?> </div> <?php } ?> Может не очень грамотно, но работает. В php, честно сказать, фонарь. Ещё раз спасибо.