Ketika Anda mengaktifkan tema wordpress, selalu merepotkan untuk mencari tahu file mana yang harus diubah. Adakah yang tahu bagaimana menyederhanakan banyak hal?
Tetapi di sisi lain, mengingat fungsi get_template_part, ini mungkin tidak mungkin. Apa yang kamu katakan?
Jawaban:
Kaitkan ke
template_include
, atur global untuk mencatat templat yang ditetapkan oleh tema lalu baca nilai itu kembali ke footer atau header untuk melihat templat mana yang dipanggil untuk tampilan yang diberikan.Saya berbicara tentang hook filter ini sebelumnya di Dapatkan nama file template saat ini , tetapi ambil salinan kode itu dan plonk itu
functions.php
file tema Anda .Kemudian buka tema
header.php
ataufooter.php
(atau di mana pun Anda suka) dan gunakan sesuatu seperti berikut untuk mencetak template saat ini.Jika Anda ingin menggunakan ini di situs produksi dan menjaga info itu dari pengguna non-administrator Anda, tambahkan sedikit logika kondisional.
Sekarang Anda dapat melacak pandangan apa yang menggunakan templat apa, sambil menjaga info itu dari pengunjung Anda.
sumber
get_page_template
Nah, jika semua yang Anda inginkan adalah memeriksa file templat mana yang telah digunakan untuk menghasilkan halaman saat ini maka Anda tidak perlu mengotori kode;)
Ada plugin yang berguna ini disebut Debug Bar . Ini penolong yang hebat dalam banyak situasi termasuk situasi Anda. Anda pasti harus memeriksanya - bagi saya dan banyak lainnya itu adalah pendamping yang harus dimiliki untuk setiap pengembangan WP.
Saya telah memasang tangkapan layar yang bisa membuat Anda jatuh cinta ...
Agar Debug Bar berfungsi , Anda harus mengaktifkan
wp_debug
danwp_savequeries
opsi. Opsi-opsi ini dalam keadaan dinonaktifkan secara default.Namun, sebelum Anda melakukan perubahan, ada beberapa hal yang perlu diingat:
Untuk melakukan perubahan:
wp_config.php
file melalui klien ftp.wp_debug
opsi. Edit kedefine( 'WP_DEBUG', true );
. Jika garis tidak ada, tambahkan ke file.define( 'SAVEQUERIES', true );
ke file.Info lebih lanjut: Codex
sumber
WP_DEBUG
danSAVEQUERIES
, meskipun ditingkatkan oleh mereka.Saya menggunakan fungsi praktis ini yang menampilkan templat saat ini hanya untuk admin super:
Semoga itu bisa membantu. :)
sumber
Tambahkan kode berikut tepat setelah baris get_header di setiap file templat yang relevan:
Di browser Anda> lihat sumber, dan nama templat akan ditampilkan sebagai komentar dalam kode html Anda, mis
sumber
Cara termudah yang saya temukan adalah memasukkan fungsi WordPress pada tag tubuh. Ini akan menambahkan beberapa kelas tergantung pada halaman yang Anda lihat (beranda untuk depan, halaman untuk halaman, dll).
Lihat di sini: http://codex.wordpress.org/Function_Reference/body_class
Plus, sangat membantu untuk menargetkan elemen dengan CSS di halaman tersebut.
Mengenal Templat Hierarki (http://codex.wordpress.org/Template_Hierarchy) seperti yang disebutkan David R juga merupakan ide yang bagus.
sumber
Ada lagi plugin bare-tulang khusus untuk tujuan ini. Saya condong ke arah menginstal bilah debug, karena fitur-fitur lain terlihat berguna, tetapi yang ini lebih mendasar dan khusus untuk tujuan ini: http://wordpress.org/extend/plugins/what-the-file/
sumber
Satu hal yang sangat sederhana yang saya lakukan adalah memasukkan komentar HTML yang mengidentifikasi file template di setiap file yang relevan dengan tema, misalnya di bagian atas index.php yang saya miliki
dan di bagian atas halaman-depan.php
Namun jelas itu membutuhkan modifikasi tema. Saya menduga Anda dapat menambahkan fungsi kustom di file footer.php atau header.php yang akan memberi tahu Anda file apa yang sedang digunakan. Metode di atas dan grafik referensi http://codex.wordpress.org/Template_Hierarchy adalah apa yang saya cenderung gunakan.
sumber
Ada plugin bernama Theme Check yang melakukan hal ini. Ini menampilkan nama file template saat ini yang digunakan sebagai komentar HTML.
sumber
Ini dia:
Daftar HTML dengan semua file templat yang digunakan untuk halaman arahan saat ini, termasuk semua templat-bagian dari plugin, tema anak dan / atau kombinasi tema induk , semuanya dalam satu baris kode:
Anda MUNGKIN perlu memeriksa bahwa server Anda tidak mengembalikan garis miring dubble di jalur apa pun . Ingatlah untuk menempatkan ini setelah semua file template benar-benar digunakan, seperti di footer.php, tetapi sebelum admin bar merender .
jika
admin-bar stuff
path ditampilkan di bagian atas, atau file lain, ubah nama filetemplate-loader.php
pada baris kode ini menjadi: apa pun nama file yang harus Anda hentikan. Sering:class-wp-admin-bar.php
jika Anda memerlukan ini di bilah admin, gunakan priotity yang tepat (paling awal) untuk membuat shure tidak ada file yang dimasukkan pada akhir daftar ini. Sebagai contoh:
prioritas
-5
membuat shure itu dimuat terlebih dahulu. Kuncinya adalah memanggilget_included_files()
pada saat yang tepat, jika tidak diperlukan beberapa array-popping!Untuk memecah ini:
Anda tidak dapat mengumpulkan semua file template yang disertakan tanpa PHP backtrace. Superglobals di dalamnya
template_include
tidak akan mengumpulkan semuanya . Cara lain adalah dengan "menempatkan penanda" di setiap file template, tetapi jika Anda perlu berinteraksi dengan file terlebih dahulu, Anda hazzle dengan waktu dan seluruh ide.1) Kita perlu memeriksa di dalam semua file yang telah digunakan oleh permintaan Wordpress saat ini. Dan mereka banyak! Jangan kaget jika Anda menggunakan 300 file bahkan sebelum functions.php Anda terdaftar.
Kami menggunakan get_included_files () PHP asli, mengonversi backslash untuk meneruskan garis miring untuk mencocokkan sebagian besar jalur pengembalian Wordpress.
2) Kami memotong array dari tempat templat-loader.php terdaftar. Setelah itu, get_included_files () yang terisi hanya akan memiliki file template yang terisi.
3) Persingkat hasilnya, kita tidak perlu path sampai folder tema atau folder plugin, sebagai template yang digunakan, dapat dicampur dari plugins, tema atau folder tema anak.
4) Akhirnya, konversikan dari array ke daftar HTML yang bagus
Modifikasi terakhir mungkin diperlukan di part3) -pengganti , jika Anda tidak ingin menyertakan oleh plugin. Mereka mungkin menelepon
class-files
terlambat, dan "mencegat" selama pemrosesan output template.Namun, saya merasa masuk akal untuk membiarkan mereka terlihat, karena idenya adalah untuk melacak apa yang telah dimuat , bahkan jika itu bukan "template" yang memberikan output pada tahap ini.
sumber