什么是.tpl文件?PHP,网页设计

Dan*_*Dan 88 html php smarty

一个男人想让我重新设计一个用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}
Run Code Online (Sandbox Code Playgroud)

要么

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

{php} $_SESSION['isFair'] = "Yes"; {/php}
Run Code Online (Sandbox Code Playgroud)

问题:代码的解释器是什么?如何重新设计这个网站?

Chr*_*rke 93

对我来说,这看起来像Smarty.Smarty是一个用PHP编写的模板解析器.

您可以在文档中了解如何使用Smarty.

如果您无法访问CMS的源:要查看浏览器中的模板,只需查看Smarty使用的变量,并创建一个PHP文件,用虚拟数据填充使用过的变量.

如果我没记错的话,一旦设置了Smarty,您可以使用:

$smarty->assign('nameofvar', 'some data');
Run Code Online (Sandbox Code Playgroud)

设置变量.

  • `.tp​​l`不仅是smarty文件的扩展名.许多其他解析器,实际上自定义解决方案使用`.tpl`.如果是自定义的,您也可以将PHP放在`.tpl`文件中.OpenCart就是这个和vBulletin的一个很好的例子,在`.tpl`里面你有PHP.这就是为什么许多服务器如NGINX预先构建,以防止人们查看`.tpl`文件. (16认同)

Que*_*tin 22

模板.我认为那是Smarty语法.


Ben*_*ier 16

.tplsmarty文件的扩展名.它的意思是"模板".

提示:如果您使用的是netbeans,并且希望为这些文件突出显示正确的语法:

  • 转到options/tools
  • Miscellaneous,选择Files选项卡
  • 单击新文件扩展名,然后输入tpl.
  • Assiciated file Type (MIME),选择HTML Files (text/html)
  • 点击 ok

  • `.tp​​l`不仅是smarty文件的扩展名.许多其他解析器和实际上自定义解决方案使用`.tpl` (3认同)

pax*_*blo 12

排名第三的谷歌"tpl file"(虽然它是令人讨厌的"现在修复TPL错误","使用我们的病毒扫描程序扫描TPL文件"之一),在阳光下用闪光的丑陋广告卖给你一切-when-all-you-want-was-the-file-description网站)是:

由PHP Web开发和PHP Web应用程序用作模板文件.主要由Smarty模板引擎使用.模板是一种常见的文本文件(如.html文件),包含用户定义的变量,当PHP Web应用程序解析模板文件时,这些变量将被用户定义的输出内容替换.

  • 实际搜索“tpl 文件”并单击第三个结果是希望将我带到这个问题... (2认同)
  • 回答问题时,最好直接包含链接,而不是依赖 Google SERP,后者因浏览器而异,具体取决于用户设置和位置。除此之外,不能保证结果总是在同一等级上。这篇文章是 2009 年的,正如我在 2017 年看到的。今天它没什么用了。 (2认同)
  • @Mohammed,我并不依赖谷歌总是返回相同的东西。我将文本复制到这个答案中的全部原因是,即使谷歌从地球表面消失,答案仍然有效。 (2认同)

Sar*_*raz 5

这些文件正在使用某种模板引擎,其中花括号指示该模板引擎正在生成的变量,创建此类变量的文件必须以与tpl文件名大致相同的名称存在于其他位置。以下是一些最常用的模板引擎。

聪明的

萨凡特

Tinybutstrong

等等

随着聪明人被广泛使用。