Расширение tpl что. Подробно о файлах *.tpl шаблона Dle их предназначение

Относительно недавно я писал о том, . И там я сказал, что для HTML-кода надо создавать специальные файлы-шаблоны, которые имеют расширение tpl . Однако, один из моих посетителей попросил меня поподробнее рассказать о том, как использовать файлы tpl . И в этой статье я постараюсь подробно рассказать о том, зачем нужны файлы tpl , как их использовать, и приведу небольшой пример.

Файлы tpl используются для написания в них HTML-кода , который впоследствии будет "вытащен" PHP и выведен пользователю на конкретных страницах. Например, в файле tpl может быть форма регистрации. То есть просто HTML-код обычной формы, ничего больше. В другом файле tpl может быть блок с панелью пользователя. В этой панели идёт "Приветствие пользователя " по имени, различные ссылки на редактирование профиля, а также кнопка выхода. Это всё примеры, где регулярно используются файлы tpl .

Однако, есть один очень важный нюанс. Рассмотрим поподробнее файл tpl с панелью пользователя . Я написал, что там идёт приветствие пользователя по имени. Но файл один, а пользователей очень много (следовательно, и имён много). Глупо создавать для каждого пользователя отдельный файл, где жёстко прописано его имя. Поэтому в файлах tpl используются специальные элементы - шаблонизаторы. Они записываются примерно в таком виде: {username} . Давайте приведу пример файла tpl , где используется шаблонизатор {username} (пусть файл называется user_panel.tpl ):


Здравствуйте, {username}!


Редактировать профиль


Выход


Как видите, никаких , и здесь нет. Только тот HTML-код , который отвечает за панель пользователя.

Теперь напишем PHP-код , который этот tpl-файл обрабатывает:

Как видите, всё очень и очень легко. Мы здесь получили содержимое файла user_panel.tpl , а затем с помощью функции PHP str_replace() заменили {username} на конкретное имя пользователя.

Это основа, которую необходимо знать для использования tpl-файлов . Далее Вы должны теперь понять, что страница будет собираться по кирпичикам, выводя все tpl-файлы в нужном порядке. Главное преимущество такого подхода, что разделяется программная часть и дизайнерская, благодаря чему становится крайне легко изменять дизайн и код PHP независимо друг от друга.

Статья поможет пользователям, которые еще довольно мало знакомы с шаблонами Dle и tpl файлов в частности. Статья поможет разобраться в чем их основное предназначение и как с ними работать.
Люди которые хорошо знакомы и не очень с HTML и CSS легко освоят работу с файлами шаблона dle.

Итак начнем в состоящий из шаблонов с расширением *.tpl есть стандартные и обязательные файлы шаблонов, которые должны там присутствовать. При отсутствии одного из файла система будет сообщать о ошибке , в некоторых случаях интернет-портал не будет работать совсем.
Подробно о каждом файле шаблона DataLife Engine

addcomments.tpl - Форма для добавления комментариев только в полной новости.

addnews.tpl - Форма для добавления публикации на веб-ресурс, для заполнения данных о новости: заголовок, категорию новости, короткую и полную новость, поля для облака тегов и различные администраторские функции.

comments.tpl - Отвечает за оформление комментариев, как в полной публикации так и последние комментарии.

feedback.tpl - Основное оформление формы обратной связи с поля заполнения.

fullstory.tpl - Шаблон файл оформление полной новости, дату публикации, автор, количество комментариев, вывод похожих новостей и т.д.

info.tpl - Форма сообщения страницы ошибки на веб-ресурсе, выходит например при неправильной авторизации.

informer.tpl - Файл оформления вывода информера (партнеров или например новости Яндекс и т.д.) на блоге.

login.tpl - Основной файл оформления формы Авторизации, Админ панели

lostpassword.tpl - Форма восстановления (при потери) пароля, выводится только для не авторизованных пользователей.

main.tpl - Основной файл оформления главной страницы вывода информации блога DLE, к которому подключаются остальные шаблоны.

navigation.tpl - Шаблон оформления перехода по страницам, постраничная навигация.

offline.tpl - Страница отключенного сайта при технических работах, если необходимо провести глобальные изменения на веб-проекте. Будет виден всем кроме администрации интернет источника.

pm.tpl - Форма оформления Отправки, Входящих и Отправленных сообщений на интернет-портале дле, отвечает за оформление личных сообщений пользователя.

preview.tpl - Настройки оформления стилей CSS для окна предварительного просмотра при добавлении новости, в которую входит оформление для короткой и полной новости.

print.tpl - Страницы Распечатки для принтера.

profile_popup.tpl - Всплывающее модальное окно при включенном AJAX скрипте, которое выходит при выборе логина пользователя мышкой. Отвечает за оформление POP - Up окна с краткой информацией о пользователе.

registration.tpl - Форма регистрации нового пользователя после принятия правил выдает анкету с полями для заполнения и регистрации.
ПС.Правила интернет-портала находятся в статической странице, и не присутствуют в данном шаблоне.

relatednews.tpl - Форма оформления Вывод похожих новостей.

search.tpl - Выводит страницу простого поиска по веб-ресурсу, куда входит поле для заполнения и кнопки Поиск и Расширенный поиск.

searchresult.tpl - Форма оформления результата поиска, а также при выборе Расширенный поиск выводит поля для заполнения.

shortstory.tpl -Важный шаблон осуществляет оформление короткой новости.

speedbar.tpl - Данный файл выводит полную ссылку на категорию в которой опубликована новость, и отвечает за быстрый переход в нужный раздел (хлебные крошки).

static.tpl - Данный файл шаблона отвечает за оформление и вывод статических страниц созданных в админ панели Dle.

static_print.tpl - Применяется для оформления статической страницы Версия для печати

stats.tpl - Оформление Статистики веб-ресурса, с выводом всей информации.

tagscloud.tpl - Шаблон оформления облака тегов.

topnews.tpl - Применяется для оформления популярных новостей.

userinfo.tpl - Форма оформления профиля информации о пользователи, а также POP - Up окном для последующего редактирования данных, открывается если пользователь зарегистрирован на веб-проекте.

vote.tpl - Используется оформления вывода результатов голосований, как Все опросы на DLE или Всего проголосовало.

На данный момент перечислены основные tpl файлы шаблона Dle, с выходом новых версий возможны изменения и добавления новых шаблонов TPL для движка DataLife Engine .

Помимо основных шаблонов TPL в DLE, любой пользователь может добавить свои, для удобного оформления, улучшения и установки сторонних модулей на веб-проект!
Для этого создается сам шаблон например:

leftblocks.tpl (левый блок веб-проекта) в который добавляются элементы оформления.

Внимание! Для нормальной работы файл должен находится в папке с основными шаблонами там же где и main.tpl!
Для подключения такого блока используется тег {include} Например:
Который вставляется в нужном месте main.tpl

{include file="leftblocks.tpl"}

Помимо такой вставки есть ещё вариант подключения коротких новостей с помощью шаблонов например:

shortstory-1.tpl Короткая новость в который добавляются элементы оформления. Пример вставки:

{title}

В main.tpl вставляем тег с настройками:

{custom category="2,3" template="shortstory-1" aviable="global" from="0" limit="5" cache="yes"}

В результате если вставить такую вставку например: в правый блок, появится ссылка и title последних новостей категории 2 и 3 как на нашем сайте сайт раздел Новости "Модули ДЛЕ " и т.д., где

custom category="2,3" (категории из которых берется новость можно добавить ещё через запятую)
template="shortstory-1" (название шаблона)
aviable="global" (глобально для всех, можно установить main вместо global будет только на главной выводится информация)
from="0"
limit="5" (количество публикаций)
cache="yes" (Включить/Выключить кеширование)

Также в шаблонах присутствую стандартные папки:
bbcodes (Папка с файлами картинок для редактирования таких как Смайлов, HTML цвета и BBcodes)
dleimages (Папка с файлами картинок для оформления рейтинга, закладок, водяного знака и т.д.)
images ((Папка с файлами изображений для оформления шаблона. может иметь разное название)
js (Папка с файлами скриптов JS и т.д.)
style (Папка с файлами каскадов стилей для оформления шаблонов)

Внимание! Скрипты обязательно должны находиться в папке JS ,в котором должен быть файл.htaccess для защиты от разного рода угроз, если такого файла не будет скрипт не запустится (сработает система защиты Dle).
Внимание! Во всех папках шаблона также должен быть файл.htaccess
Пример файла.htaccess с данными внутри:
Order Deny,AllowAllow from all

Внимание! В шаблоне там же где main.tpl должен быть файл.htaccess С таким кодом:
Order allow,denyDeny from all

Файл.htaccess можно скачать из шаблона дистрибутива движка DataLife Engine

О многих других возможностях читайте в документации к движку Documentation/readme.chm

Там есть информация о каждом теге и многое другое!

Например: Подключение самих модулей (голосование, авторизация, полной и короткой новости и др.) осуществляется в файлах tpl по средствам специальных тегов. Чтобы подключить модуль голосования, к примеру следует вписать тег {poll}, который будет выводить голосование в дополнительном шаблоне tpl, а все оформление голосование будет храниться в tpl файле голосования, то есть в poll.tpl.

Название (англ.): Document Template

Название (рус.): Шаблон документа

Разработчик: Нет данных

Описание: TPL также известный как Document Template представляет собой формат шаблона документа. Файлы этого типа могут создаваться и использоваться различным программным обеспечением. Такие шаблоны обычно используются для создания сходных по структуре документов. Шаблоны TPL могут содержать данные о разметке страниц, форматировании текста, а также другую информацию. Еще шаблоны TPL могут использоваться популярной CMS Datalife Engine. Открыть их можно обычным текстовым просмотрщиком. Прочие шаблоны TPL нужно открывать в соответствующих программах.

Формат 2

Название (англ.): Adobe Photoshop Tool Presets File

Название (рус.): Файл настроек инструментов Adobe Photoshop

Разработчик: Adobe

Описание: TPL иначе Adobe Photoshop Tool Presets File представляет собой собственный формат файла настроек растрового графического редактора Adobe Photoshop. Формат TPL разработан известной софтверной компанией Adobe. Файлы этого типа предназначаются для хранения настроек инструментов, что позволяет выполнять в программе однотипные действия без необходимости каждый раз устанавливать новые настройки. TPL-файл может хранить в себе такие данные как ширина кисти, цвет градиента или заливки и т.п. Создается файл TPL родной программой Adobe Photoshop. При необходимости шаблон TPL может быть сохранен на жесткий диск.

Для открытия (редактирования) файла этого формата можно использовать следующие программы:

Формат 3

Название (англ.): Canvas Template

Название (рус.): Шаблон Canvas

Разработчик: ACD Systems

Описание: TPL иначе Canvas Template представляет собой собственный формат шаблон чертежа, созданного с помощью ACD Systems Canvas – мощной программы, предназначенной для работы с векторной графикой. Формат TPL разработан софтверной компанией ACD Systems, известной своими приложениями для просмотра изображений ACDSee и ACDSee Photo Manager. Файлы TPL – это шаблоны, используемые для создания новых чертежей в формате CVX. Шаблон TPL хранит векторную графику, а также необходимые для создания чертежей настройки. Файлы формата TPL необходимо открывать родной программой Systems Canvas.

После создания info -файла, в принципе, тема уже определена. Это значит, что вы можете зайди в раздел управлением темами http://mysite.ru/admin/build/themes и включить там свою тему. Естестественно, после включения её никакого дизайна вы не увидете - страница приобретёт стиль "чёрное на белом" - на белом фоне чёрный текст.

Однако хочу отметить, что не смотря на то, что в нашей теме никаких файлов кроме mytheme.info не лежит, сайт будет работать так как же как и раньше - выводить весь контент, добавлять блоки в регионы (http://mysite.ru/admin/build/block ) и прочее. Это объясняется тем, что в ядро друпала включены обязательные модули , которые даже при полном отсутствии каких либо файлов в вашей теме (за исключением info-файла) позволяют продолжать работу с друпалом.

Впринципе, всё создание шаблона сводится к перекрытию файлов-шаблонов (они имеют расширение .tpl.php ) стандартных модулей нашей CMS .

Самый важный tpl-файл (tpl - сокращение от template , шаблон) это page.tpl.php . Он отвечает за построение каждой страницы сайта. Давайте разберёмся, из чего же состоит файл шаблона:

  • html код
  • php код
  • javascript код (необязательно)

В каждый файл шаблона друпал передаёт данные сайта в виде стандартных переменных. Для каждого файла шаблона существуют 2 вида переменных:

  • переменные, которые передаются только в этот файл
  • переменные, которые передаются во все файлы

Вот список всех переменных для page.tpl.php :

Общие переменные (для всех файлов):
  • $base_path - базовый путь, куда был установлен друпал
  • $css - массив css-файлов, подключенных к текущему файлу шаблона
  • $directory - путь к папке, в которую установлена тема
  • $is_front - возвращает значение ИСТИНА если вы находитесь на главной странице
  • $logged_in - возвращает значение ИСТИНА если вы залогинились
  • $is_admin - возвращает значение ИСТИНА если вы имеете доступ в админку
Метаданные страницы
  • $language - (объект) Текущий язык, который отображается на сайте
  • $language->language - содержит его текстовое представление
  • $language->dir - содержит направление языка. Это или будет "ltr"(left-to-right) или "rtl"(right-to-left)
  • $head_title - модифицированная версия заголовка страницы, для использования между тэгами
  • $head - вставляется между тэгами . Содержит мета тэги, ключевые слова и т.д.
  • $styles - служит для загрузки всех css -файлов в текущую страницу
  • $scripts - служит для загрузки всех javascript"ов в текущую страницу
  • $body_classes - набор классов css для тэга . Содержит в себе информацию о текущем расположении колонок на сайте, их количестве, текущем url"e и т.д.
Информация о сайте
  • $front_page - адресс главной страницы сайта. Лучше использовать эту переменную для ссылки на главную страницу, т.к. она включает в себя язык домена и преффикс
  • $logo - путь к логотипу сайта, если он включен на сайте
  • $site_name - имя сайта. Может быть пустым, если отключить его в фичах в info-файле. Настраивается в mysite.ru/admin/settings/site-information
  • $site_slogan - слоган сайта. Может быть пустым, если отключить его в фичах в info-файле. Настраивается в mysite.ru/admin/settings/site-information
  • $mission - миссия сайта. Может быть пустой, если отключить её в фичах в info-файле. Настраивается в mysite.ru/admin/settings/site-information
Навигация
  • $search_box - содержит в себе html код, отображающий строку поиска. Может быть пустым если выключить его в info-файле
  • $primary_links
  • $secondary_links - массив, содержащий в себе навигационные ссылки для сайта, если они разрешены в фичах инфо-файла
Содержимое страницы по умолчанию
  • $left - регион. Содержит в себе html код для левой колонки. Если в инфо-файле задать любые регионы, то он пропадает
  • $breadcrumb - "хлебные крошки" для текущей страницы
  • $title - заголовок страницы
  • $help - динамические подсказки, в основном показываются в админке
  • $messages - выводит сообщения об ошибках и предупреждениях на сайте
  • $tabs - ссылки (табы), связывающие текущую страницу с её подстраницами (к примеру для статьи - с её страницей редактирования)
  • $content - содержимое текущей страницы
  • $right - регион. Содержит в себе html код для правой колонки. Если в инфо-файле задать любые регионы, то он пропадает
Нижняя область/закрывающие данные
  • $feed_icon - строка со всеми иконками обратной связи для текущей страницы
  • $footer_message - сообщение внизу страницы. Настраивается в mysite.ru/admin/settings/site-information
  • $footer - регион. Содержит в себе html код для нижней части страницы. Если в инфо-файле задать любые регионы, то он пропадает
  • $closure - закрывающая метка для всех модулей, которые изменяли страницу. Эту переменну обязательно надо выводить после всего динамического содержимого. Лучше всего перед закрытием тэга BODY

Тут перечислены все стандартные переменные . Но вы можете добавлять сюда свои переменные либо в роли регионов через info -файл, либо в любой другой роли через файл template.php (о нём чуть позже).

Теперь я покажу какой код должен находиться в page.tpl.php и в какой код он потом интерпретируется браузерами. Перед вами кусок кода из page.tpl.php :

В первой строке идёт проверка, есть ли вообще заголовок у текущей страницы. Если его нет - то отладчик просто пропустит этот код, и не будет заходить внурть его. Если же заголовок существует, то в html код страницы добавятся тэг , после него будет напечатан заголовок страницы, и всё это закроется тэгом . Если смотреть код этой страницы в браузере, то он выглядел бы так:

Урок 4 . Необходимые файлы для создания шаблона. Page.tpl.php

Таким образом оборачиваются почти все переменные сайта. Это делается для того, чтобы мы могли прописывать стили для контента, заранее не зная, какой он будет.

Вот таким образом выглядит стандартный файл page.tpl.php , который идёт вместе с друпалом. Меняйте название классов, переставляйте местами переменные - и смотрите что из этого получается. Это надо для того, чтобы "пощупать" как оно работает и что выводится в результате.

" />

Поделиться: