Версия для печати

Переменные в шаблоне Joomla 3 доступные через $this.

Оцените материал
(2 голосов)

Переменные $this

$this->template- Получение названия текущего шаблона.
$this->baseurl- Получение базового URL.
$this->base- Получение текущего URL.
$this->title- Получение Title страницы.
$this->_generator= 'Мой сайт' - Установка своего значения для мета-тега generator.
$this->language- Текущая локализация.
$this->_file- Полный путь к файлу шаблона.
$this->params->get('myTemplateParam')- Получение параметра шаблона.
unset($this->_scripts[$this->baseurl.'/media/system/js/mootools-core.js'])- Удаление неиспользуемых JavaSript в шаблоне.

Ну и в дополнение к статье можно отметить полезные классы и методы которые могут пригодиться в шаблоне.

JFactory::getConfig()- Обращение к конфиг файлу. Например:
JFactory::getConfig()->getValue('sitename')- Вернет имя сайта.

JSite::getMenu()- Получаем информацию о меню.
JSite::getMenu()->getActive()- Значение активного пункта меню.
JSite::getMenu()->getDefault()- Значение пункта меню по умолчанию, который ведет на главную страницу.
JSite::getMenu()->getDefault( JFactory::getLanguage()->getTag() )- Для мультиязычных сайтов.

JHTML::_('image', 'images/img.jpg', 'ALT Картинки', 'heght="50" width="150"')- Вывод картинки например логотипа.
JHTML::_('script', $filename = 'script.js', $path = 'media/system/js/', $mootools = true )- Подключение файлов скриптов.
JHTML::_('stylesheet', $filename = 'file.css', $path = 'media/system/css/' , $attribs = array() )- Подключение файлов стилей.

Но мне привычней такой способ добавления скриптов)
$doc = JFactory::getDocument();
$doc->addScript(string $url, [string $type = "text/javascript"]);
Добавление кода скрипта прямо в шаблон.
$doc->addScriptDeclaration(string $content, [string $type = 'text/javascript']);

И способ добавления стилей.
$doc = JFactory::getDocument();
$doc->addStyleSheet (string $url, [string $type = 'text/css'], [string $media = null], [ $attribs = array()]);
Добавление стилей прямо в шаблон.
$doc->addStyleDeclaration (string $content, [string $type = 'text/css']);

Возможно вам понравится

2 комментарии