Що таке .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 - це парсер шаблонів, написаний на PHP.

Про те, як користуватися Smarty, ви можете прочитати в документації .

Якщо ви не можете отримати доступ до джерела CMS: Щоб переглянути шаблони у вашому браузері, просто подивіться, які змінні використовує Smarty, і створіть файл PHP, який заповнює використані змінні фіктивними даними.

Якщо я добре пам’ятаю, після налаштування Smarty ви можете використовувати:

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

встановити змінні.


19
.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-wanted-was-the-file-description-сайти) це:

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


1
насправді пошук "tpl-файлу" та натискання на третій результат - це хоче, призвів мене до цього питання ...
MoralCode

1
Відповідаючи на запитання, краще включити посилання безпосередньо, а не покладатися на Google SERP, який різниться від браузера до браузера залежно від налаштувань користувача та місцезнаходження. На додаток до цього, не гарантується, що результат завжди буде в одному рейтингу. Ця публікація з 2009 року, де, як я вже бачив у 2017 році, сьогодні вона мало корисна.
Мохаммед Ахтар Зубері

@Mohammed, я не покладався на те, що Google завжди повертає одне і те ж. Вся причина, по якій я скопіював текст у цю відповідь, полягає в тому, що відповідь все одно буде дійсною, навіть якщо Google зникне з лиця планети.
paxdiablo

6

Файли використовують якийсь механізм шаблонів, в якому фігурні дужки вказують на змінні, що генеруються цим механізмом шаблонування, файли, що створюють такі змінні, повинні бути присутніми деінде з більш-менш однаковим ім'ям, як ім'я файлу tpl. Ось деякі шаблони двигуна, які в основному використовуються.

Розумний

Савант

Крихітний, міцний

тощо

З розумним широко використовується.


3

Вони схожі на шаблони Smarty . Повинні бути додаткові PHP-скрипти, які фактично створюють екземпляр движка Smarty і надають йому дані, які він може використовувати для змінних елементів.



2

.tpl показує, що є розумний! smarty - це мова шаблону для розділення php-кодів з HTML-кодів. Що дає нам можливість робити дизайнерські роботи на сторінці, яка не включає php-коди.


1

У цьому конкретному випадку це Smarty, але це також можуть бути шаблони Jinja2 . Зазвичай вони також мають розширення .tpl,


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.