Что такое файлы .tpl? php, веб-дизайн

92

Один мужчина хочет, чтобы я переделал сайт, работающий на PHP (VideoCMS). Но когда я попросил его прислать мне исходный текст, он дал мне файлы * .tpl вместо * .php. Внутри них есть код:

{include file='header.tpl' p="article"} 

<br />
<table width="886" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td width="150" valign="top">
    <div id="reg_box">
    <h3 class="captions">{$lang.articles}</h3>
        <div id="list_cats">
        <ul>
            {$article_categories}
        </ul>
        </div>
    </div>
    <br />
    <div id="reg_box">
    <h3 class="captions">{$lang.members}</h3>
    {if $logged_in == '1'}
    {include file='loggedin_body.tpl'} 
    {else}
    {include file='login_body.tpl'} 
    {/if}

или

{include file='header.tpl' p="index"} 

{php} $_SESSION['isFair'] = "Yes"; {/php}

Вопрос: какой интерпретатор кода? Как сделать редизайн этого сайта?

Дэн
источник

Ответы:

98

Для меня это похоже на Smarty. Smarty - это анализатор шаблонов, написанный на PHP.

Вы можете прочитать о том, как использовать Smarty, в документации .

Если вы не можете получить доступ к исходному тексту CMS: Чтобы просмотреть шаблоны в вашем браузере, просто посмотрите, какие переменные использует Smarty, и создайте файл PHP, который заполняет используемые переменные фиктивными данными.

Если я правильно помню, после настройки Smarty вы можете использовать:

$smarty->assign('nameofvar', 'some data');

для установки переменных.

Крис Кларк
источник
20
.tplэто НЕ только расширение для файлов smarty. Многие другие парсеры и собственно собственные решения используют. .tplТакже, если это настраивается, вы также можете разместить PHP внутри .tplфайлов. OpenCart является хорошим примером этого и vBulletin, где внутри у .tplвас есть PHP. Вот почему многие серверы, такие как NGINX, поставляются предварительно созданными, чтобы люди не могли просматривать .tplфайлы.
TheBlackBenzKid
17

.tplрасширение для файлов smarty . Это означает «шаблон».

Совет: если вы используете netbeans и хотите правильную подсветку синтаксиса для этих файлов:

  • Перейти к options/tools
  • Под Miscellaneousвыберите Filesвкладку
  • Щелкните новое расширение файла, введите tpl.
  • В Assiciated file Type (MIME)выберитеHTML Files (text/html)
  • Нажмите ok
Бенджамин Крузье
источник
4
.tplэто не только расширение для файлов smarty. Многие другие парсеры и собственно собственные решения используют.tpl
TheBlackBenzKid
13

Номер 3 попал в Google за "tpl file"(хотя это одна из тех раздражающих «Исправьте ошибки TPL прямо сейчас», «Сканируйте файлы TPL с помощью нашего антивирусного сканера», продайте все-под-солнцем с-яркой-уродливой-рекламой -when-all-you-want-was-the-file-description sites):

Используется веб-разработкой PHP и веб-приложениями PHP в качестве файла шаблона. В основном используется шаблонизатором Smarty. Шаблон - это обычный текстовый файл (например, файл .html), содержащий пользовательские переменные, которые заменяются пользовательским выходным содержимым, когда веб-приложение PHP анализирует файл шаблона.

Paxdiablo
источник
1
на самом деле поиск "tpl file" и нажатие на третий результат приводит меня к этому вопросу ...
MoralCode
1
Отвечая на вопрос, лучше указать ссылку напрямую, а не полагаться на поисковую выдачу Google, которая зависит от браузера и браузера в зависимости от настроек пользователя и местоположения. Кроме того, не гарантируется, что результат всегда будет на одном уровне. Это сообщение из 2009 года, когда я видел это в 2017 году. Сегодня от него мало пользы.
Мохаммед Ахтар
@ Мохаммед, я не полагался на то, что Google всегда возвращает одно и то же. Вся причина, по которой я копирую текст в этот ответ, заключается в том, чтобы ответ все еще был действителен, даже если Google исчезнет с лица планеты.
paxdiablo
6

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

Умный

Savant

Tinybutstrong

так далее

При этом широко используется smarty.

Сарфраз
источник
3

Они похожи на шаблоны Smarty . Должны быть некоторые дополнительные сценарии PHP, которые фактически создают экземпляр движка Smarty и предоставляют ему данные, которые он может использовать для заменяемых элементов.

Пол Диксон
источник
3

Вы должны изучить синтаксис Smarty, это система шаблонов.

Африди
источник
2

.tpl показывает, что есть смарт! smarty - это язык шаблонов для отделения php-кодов от html-кодов. Это дает нам возможность создавать элементы дизайна на странице, не содержащей php-кодов.

user2908225
источник
1

В данном случае это Smarty, но также могут быть шаблоны Jinja2 . Обычно они также имеют расширение .tpl,

Checo R
источник