Rumah > pembangunan bahagian belakang > tutorial php > Memperkenalkan Twig: Alat yang sempurna untuk memulakan pembangunan WordPress anda

Memperkenalkan Twig: Alat yang sempurna untuk memulakan pembangunan WordPress anda

PHPz
Lepaskan: 2023-08-28 20:54:01
asal
1215 orang telah melayarinya

Twig 简介:快速启动 WordPress 开发的完美工具

Banyak yang telah ditulis tentang masa depan WordPress, dengan ramai yang berpendapat bahawa ia tidak mempunyai bahasa templat, terutamanya apabila platform seperti Django, Ruby on Rails, Node.js, Laravel dan juga Drupal semuanya mempunyai bahasa templat. Fakta seperti “WordPress menguasai hampir 25% web” menyukarkan untuk mempersoalkan sistem templat berasaskan PHP semasanya. Tetapi kerana modulariti dalam kod masih tiada, seseorang boleh bertanya bila teras akan mempunyai enjin templat.

Berita baik di sini! Enjin templat Twig dan pemalam yang dipanggil Timber membantu kami menulis kod super bersih dan modular dalam WordPress. Dalam siri ini, kami akan membincangkan pelaksanaan dan penyepaduannya dengan WordPress. Saya akan mulakan dengan asas tentang apa itu Twig dan mengapa anda memerlukannya, dan dalam tiga artikel seterusnya saya akan menerangkan pelbagai jenis templat Twig yang disepadukan dengan WordPress melalui Timber.

Apakah cawangan?

Twig ialah enjin templat PHP yang fleksibel, pantas dan selamat. Twig dibawakan kepada anda oleh Fabien Potencier, pencipta rangka kerja Symfony, dan dianggap kaya dengan ciri, luas, pantas dan cekap.

Biasanya apabila anda membuat kod dalam WordPress, anda mencampurkan ketulan PHP dengan HTML (inilah yang kami panggil kod spageti). Ini bukan tanda yang sangat bersih. Untuk menggunakan pendekatan modular dan Doing it Right™, ViewViewData perlu diasingkan daripada Data. Dengan Twig, anda boleh memisahkan lapisan View

daripada aplikasi anda yang lain. Twig menggunakan corak Model-View-Controller (MVC), yang membantu mengekalkan kod bersih.

Kenapa guna Twig?

Selama bertahun-tahun, enjin templat PHP yang berbeza telah dibangunkan, tetapi Twig pasti mengatasi kesemuanya dalam keupayaan berikut.

Ciri yang kaya

Twig ialah salah satu enjin templat PHP yang paling kaya dengan ciri dan berkuasa. Ia menyokong berbilang warisan dan keluaran automatik keluar, dan membantu membahagikan templat kepada berbilang blok atau komponen untuk mengekalkan reka bentuk modular. Bukan itu sahaja, pembangun boleh menambah lebih banyak pemalam untuk memenuhi sebarang keperluan bahagian hadapan.

Cepat dan cekap

Templat yang disusun dengan Twig menanggung lebih sedikit overhed daripada templat PHP biasa. Rutin pengekodan sangat dioptimumkan dan anda menjimatkan banyak masa pembangunan. Ia juga berguna apabila anda merancang untuk menukar rangka kerja asas, kerana Twig boleh membantu mencipta lapisan templat berasingan yang boleh disambungkan dengan mana-mana rangka kerja bahagian belakang, sama ada Laravel atau WordPress.

Mesra Pereka dan Pembangun

Twig sesuai dengan keperluan pereka dan pembangun. Walaupun anda bukan geek pengekodan, menggunakan Twig adalah mudah, dan menulis templat modular berdasarkan komponen terasa betul. Sintaksnya mudah difahami dan mengelak daripada melaksanakan operasi PHP dinamik dalam fail templat. Secara keseluruhannya, ia sangat moden dan berfungsi dengan semua piawaian pengekodan terkini. Konsep keluaran keluar adalah sangat komprehensif apabila diproses dengan Twig.

Mari kita mulakan dengan contoh mudah.

Dalam PHP biasa anda akan mendapat output seperti ini:

<?php echo $foo;  // $foo is any random variable ?>
<?php echo htmlspecialchars( $foo, ENT_QUOTES, 'UTF-8' ) ?>
Salin selepas log masuk

Dalam Twig, perkara lebih mudah, iaitu kod di atas dipekatkan kepada:

{{ foo }}       
{{ foo|escape }}
{{ foo|e }}         {# shortcut to escape a variable #}
Salin selepas log masuk

Melepaskan keluaran semudah itu dalam Twig. Hanya tambah pendakap kerinting berganda, masukkan nama pembolehubah dan anda akan mendapat output. Letakkan paip dengan e di sebelahnya dan kami mula melarikan diri. Tiga artikel seterusnya dalam siri ini akan membincangkan perkara ini secara terperinci.

Keselamatan

Twig membersihkan dan melindungi data itu sendiri. Mod Kotak Pasir

nya yang unik memantau keseluruhan kod dan menapis hasil terbaik. Ini bermakna templat yang dijana pengguna boleh dilaksanakan dengan mudah dan selamat. Persekitaran kotak pasir hanya boleh didayakan secara global atau setempat untuk templat tertentu, seperti yang ditunjukkan di bawah:

{{ include( 'post.html', sandboxed = true ) }}
Salin selepas log masuk

Jika sebarang ralat sintaks berlaku, Twig akan menjana mesej untuk nyahpepijat fail anda dengan butiran seperti nama fail dan nombor baris kod yang menyinggung perasaan.

Fleksibel

Saya baru sahaja menyebut bahawa Twig adalah enjin templat moden, yang juga bermakna anda boleh memanjangkan fungsinya kerana ia sangat fleksibel. Ia menyokong sepenuhnya penganalisis leksikal dan parser

yang cekap, yang melaluinya pembangun boleh menentukan teg tersuai, penapis, fungsi dan banyak lagi.

Lain-lain

Sebagai tambahan kepada semua ciri yang dinyatakan di atas, Twig didokumenkan dengan baik dan diuji unit sepenuhnya. Perpustakaan API dan templatnya adalah stabil sepenuhnya dan boleh mengendalikan pelbagai tugas yang kompleks. Buku dalam talian khusus dan dokumentasi API yang lengkap juga tersedia.

Twig ialah bahasa templat baharu untuk Drupal 8, yang merupakan motivasi utama saya untuk menggunakan enjin templat ini dengan yakin. Orang baik di XWP, terutamanya Weston Ruter, sedang mengusahakan cadangan untuk menjadikan Twig mematuhi piawaian VIP WordPress.com.

Timber: Sepadukan Twig dengan WordPress

Keseluruhan perbincangan setakat ini berkisar kepada dua perkara. Pertama, kita harus mengambil pendekatan modular dan memisahkan templat daripada data semasa membina tema WordPress tersuai, dan kedua, Twig boleh membantu kami melakukan ini. Tetapi apa yang menyatukan kedua-duanya? 🎜

Usaha berbeza telah dilakukan untuk mencapai integrasi terbaik antara Twig dan WordPress, salah satu percubaan berani ialah Timber yang dicipta oleh agensi web bernama Upstatement. Ia menggunakan enjin templat Twig, yang memungkinkan untuk menulis kod modular dan bersih dalam WordPress.

Timber dan Twig membantu anda membina tema WordPress yang pantas dan modular. Ini membolehkan anda memisahkan kod HTML daripada fail PHP biasa, memastikan corak pengekodan yang lebih mampan. Konsep mengasingkan HTML dan PHP membolehkan fail PHP memfokuskan sepenuhnya pada penyediaan data dan logik, manakala fail HTML (Twig files) memfokuskan pada view Lapisan aplikasi web. <code class="inline">data 和逻辑,而 HTML 文件(Twig 文件)则专注于 view Web 应用程序层。

总的来说,Timber 执行三个主要任务:

  • 它将 Twig 集成到 WordPress 中。
  • 它渲染 Twig 模板。
  • 它添加了基础 WordPress 数据集。

我认为他们的使命宣言说明了一切:

Timber 是一款适合希望通过直观、一致且完全可访问的界面将 HTML 转换为高质量 WordPress 主题的开发人员的工具。

  • 直观:API 的编写以用户为中心,围绕程序员的期望。
  • 一致:所有 WordPress 对象都可以通过多态属性(例如 slug、ID 和名称)进行访问。
  • 可访问:没有黑匣子。我们已尽一切努力让开发人员能够访问 100% 的 HTML。

木材如何工作?

对于常规 WordPress 主题,所有 PHP 和 HTML 代码片段都集成在同一个 PHP 模板文件中并进行修改。然而,使用 Timber,我们将模板文件拆分为两个不同的数据文件:PHP 文件和视图/模板文件,即 Twig 文件。

因此,第一个文件的扩展名为 .php,第二个文件的扩展名为 .twig。因此,如果您要为 single.php 创建模板文件,您的文件将被命名为 single.phpsingle.twig

Secara keseluruhannya, Timber melaksanakan tiga tugas utama:

  • Ia menyepadukan Twig ke dalam WordPress.
  • Ia memaparkan templat Twig.
  • Ia menambah set data WordPress asas.
Saya rasa pernyataan misi mereka mengatakan semuanya:
Timber ialah alat untuk pembangun yang ingin menukar HTML kepada tema WordPress berkualiti tinggi melalui antara muka yang intuitif, konsisten dan boleh diakses sepenuhnya.

  • Intuitif: API ditulis dengan mengambil kira pengguna dan sekitar jangkaan pengaturcara.
  • Konsisten: Semua objek WordPress boleh diakses melalui sifat polimorfik seperti slug, ID dan nama.
  • Boleh Diakses: Tiada kotak hitam. Kami telah berusaha sedaya upaya untuk menjadikan 100% HTML boleh diakses oleh pembangun.

Bagaimana kayu berfungsi?

Dengan tema WordPress biasa, semua coretan kod PHP dan HTML disepadukan dan diubah suai dalam fail templat PHP yang sama. Walau bagaimanapun, dengan Timber, kami membahagikan fail templat kepada dua fail data yang berbeza: fail PHP dan fail paparan/templat, fail Twig.

Oleh itu, sambungan fail pertama ialah .php, dan sambungan fail kedua ialah .twig . Jadi jika anda mencipta fail templat untuk single.php, fail anda akan dinamakan single.php dan single.twig.

Yang pertama ialah fail yang menyusun data, dan yang kedua ialah templat yang menggunakan data dalam HTML. Dengan cara ini anda boleh menambah tindakan dinamik dalam tema WordPress anda secara modular.

Mari kita ringkaskan: #🎜🎜# #🎜🎜#Timber mengendalikan fail templat tema WordPress dalam fail PHP dan HTML (Twig). Dengan cara ini anda boleh memisahkan logik daripada paparan. Ia memberi anda cara baharu untuk membina, mereka bentuk dan memaparkan tema anda. #🎜🎜##🎜🎜# #🎜🎜# #🎜🎜#KESIMPULAN#🎜🎜# #🎜🎜#Terdapat banyak yang perlu digemari tentang Twig. Artikel ini hanya memperkenalkan kelebihan menggunakan enjin templat dalam WordPress. Kod modular adalah kod yang lebih baik dan lebih mudah diselenggara. Sudah tiba masanya untuk pembangun membuat anjakan aliran kerja, dan saya percaya Twig boleh membantu mereka melakukan perkara itu. #🎜🎜# #🎜🎜#Dalam artikel seterusnya, saya akan tunjukkan pelaksanaan sebenar menggunakan fail template Twig. Kami akan melihat cara melaksanakan Twig untuk memaparkan imej, ulasan dan menu WP dengan contoh kod. Sehingga itu, jika anda mendapati sebarang keraguan, sila berasa bebas untuk bertanya. Jangan lupa untuk berhubung dengan kami di Twitter. #🎜🎜#

Atas ialah kandungan terperinci Memperkenalkan Twig: Alat yang sempurna untuk memulakan pembangunan WordPress anda. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan