Web Development
JБлог

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

Оцените материал
(1 Голосовать)

Переменные $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']);

Другие материалы в этой категории: « Простая HTML сетка на Flexbox с прижатым к низу футером
Авторизуйтесь, чтобы получить возможность оставлять комментарии