Пример задачи для которой нужно переопределить файл helper.php в шаблоне Joomla 1.5 - это добавление title (тайтла) к пунктам меню.
Стандартно такой функционал не предусмотрен, хотя это очень полезно как для seo-продвижения сайта, так и для юзабилити сайта.
Итак, рассмотрим как решить эту проблему конкретно для модуля меню (mod_mainmenu).
Особенность данного модуля в том, что собственно вывод конкретного пункта меню скрывается в helper.php и стандартно мы не можем как то существенно повлиять через default.php (только добавить оберток, но добавить title в ссылку - не получится).
Берем /modules/mod_mainmenu/helper.php и копируем его в /templates/название шаблона/html/mod_mainmenu.
Пока он у нас не работает - для его подключения необходимо добавить строчку
require_once (dirname(__FILE__).DS.'helper.php');
в default.php.
Далее в helper.php переименовываем классы
- modMainMenuHelper -> WebmodMainMenuHelper
- JMenuTree -> WebJMenuTree
и функции
- buildXML -> WebbuildXML.
В файле default.php переименовываем callback-функцию
modMainMenuXMLCallback в WebmodMainMenuXMLCallback.
Теперь осталось поправить вызовы функций в default.php и в helper.php и готово, можно добавлять новый функционал в helper.php.
Я, в частности, добавил генерацию тайтла по принципу - из названия пункта меню в названии остается часть до "::", а то, что дальше - становится тайтлом. Если же символов "::" в названии нет, то тайтл совпадает с названием пункта меню.
Чтобы воспользоваться данным методом достаточно скачать файл и распаковать его содержимое в папку /templates/название шаблона/html/mod_mainmenu.
Внимание!!! Если в Вашем шаблоне эта папка ну пуста и там реализован другой функционал, то он потеряется (а именно шаблоны от yootheme, joomlart, icetheme и другие).
| Вариант верстки меню для Joomla 1.5 с использованием CSS 2.1 &rarr |
|---|




