Apa itu file .tpl? php, desain web

92

Seorang pria ingin saya mendesain ulang situs yang dijalankan dengan PHP (VideoCMS). Tetapi ketika saya memintanya untuk mengirimi saya sumber, dia telah memberi saya file * .tpl alih-alih * .php. Ada beberapa kode di dalamnya:

{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}

atau

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

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

Pertanyaan: apa penafsir kode tersebut? Bagaimana cara mendesain ulang situs ini?

Dan
sumber

Jawaban:

98

Bagi saya itu terlihat seperti Smarty. Smarty adalah parser template yang ditulis dalam PHP.

Anda dapat membaca tentang cara menggunakan Smarty di dokumentasi .

Jika Anda tidak bisa mendapatkan akses ke sumber CMS: Untuk melihat template di browser Anda, lihat saja variabel apa yang digunakan Smarty dan buat file PHP yang mengisi variabel yang digunakan dengan data dummy.

Jika saya ingat dengan benar, setelah Smarty disiapkan, Anda dapat menggunakan:

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

untuk mengatur variabel.

Chris Clarke
sumber
20
.tplBUKAN hanya ekstensi untuk file smarty. Banyak parser lain dan bahkan solusi kustom menggunakan .tplJuga jika kustom, Anda juga dapat menempatkan PHP di dalam .tplfile. OpenCart adalah contoh bagus untuk ini dan vBulletin, di mana di dalamnya .tplAnda memiliki PHP di dalamnya. Itulah sebabnya banyak server seperti NGINX sudah dibuat sebelumnya dengan mencegah orang melihat .tplfile.
TheBlackBenzKid
23

Template. Saya pikir itu adalah sintaks Smarty .

Quentin
sumber
17

.tpladalah ekstensi untuk file smarty . Artinya "template".

Tip: jika Anda menggunakan netbeans dan ingin penyorotan sintaks yang benar untuk file tersebut:

  • Pergi ke options/tools
  • Di bawah Miscellaneous, pilih Filestab
  • Klik ekstensi file baru, masukkan tpl.
  • Di Assiciated file Type (MIME), pilihHTML Files (text/html)
  • Klik ok
Benjamin Crouzier
sumber
4
.tplbukan hanya ekstensi untuk file smarty. Banyak parser lain dan bahkan solusi kustom menggunakan.tpl
TheBlackBenzKid
13

Hit nomor 3 di Google untuk "tpl file"(meskipun itu salah satu dari "Perbaiki kesalahan TPL sekarang" yang menjengkelkan, "Pindai file TPL dengan pemindai virus kami", jual-Anda-semuanya-di-bawah-matahari-dengan-mencolok-jelek-iklan -when-all-you-want-was-the-file-description sites) adalah:

Digunakan oleh pengembangan web PHP dan aplikasi web PHP sebagai file template. Kebanyakan digunakan oleh mesin template Smarty. Template adalah file teks umum (seperti file .html) dan berisi variabel buatan pengguna yang digantikan oleh konten output yang ditentukan pengguna saat aplikasi web PHP mengurai file template.

paxdiablo
sumber
1
sebenarnya mencari "file tpl" dan mengklik hasil ketiga saya ingin membawa saya ke pertanyaan ini ...
MoralCode
1
Saat menjawab pertanyaan, lebih baik menyertakan tautan secara langsung daripada mengandalkan SERP Google, yang bervariasi dari browser ke browser tergantung pada pengaturan dan lokasi pengguna juga. Selain itu, tidak ada jaminan bahwa hasil akan selalu berada pada peringkat yang sama. Posting ini berasal dari tahun 2009, di mana seperti yang telah saya lihat di tahun 2017. Hari ini tidak banyak gunanya.
Mohammed Akhtar Zuberi
@Mohammed, saya tidak bergantung pada Google yang selalu mengembalikan hal yang sama. Seluruh alasan saya menyalin teks ke dalam jawaban ini adalah agar jawabannya tetap valid bahkan jika Google menghilang dari muka planet ini.
paxdiablo
6

File-file tersebut menggunakan semacam mesin templat di mana tanda kurung kurawal menunjukkan variabel yang dihasilkan oleh mesin templat tersebut, file yang membuat variabel tersebut harus ada di tempat lain dengan nama yang kurang lebih sama dengan nama file tpl. Berikut beberapa template engine yang banyak digunakan.

Smarty

Sarjana

Tinybutstrong

dll

Dengan smarty digunakan secara luas.

Sarfraz
sumber
3

Itu terlihat seperti template Smarty . Harus ada beberapa skrip PHP tambahan yang benar-benar membuat instance mesin Smarty dan memberikan data yang dapat digunakannya untuk elemen yang dapat diganti.

Paul Dixon
sumber
3

Anda harus mempelajari sintaks Smarty, itu adalah sistem templat.

Afridi
sumber
2

.tpl menunjukkan ada smarty! smarty adalah bahasa template untuk memisahkan kode php dari kode html. Yang memberi kita kemampuan untuk melakukan desain pada halaman yang tidak termasuk kode php.

pengguna2908225
sumber
1

Dalam kasus khusus ini adalah Smarty, tetapi bisa juga berupa template Jinja2 . Mereka biasanya juga memiliki ekstensi .tpl,

Checo R
sumber