Adakah keuntungan menggunakan get_header () di atas include ('header.php')?

11

Tema dasar - sebenarnya setiap tema yang saya lihat - menggunakan get_header () untuk memasukkan file header, tapi saya tidak melihat alasan untuk melakukannya.

Apa keuntungan menggunakan get_header()bukan sederhana include('file.php')?

Akan
sumber
3
Saya tahu ini di luar topik, tetapi terlalu sering saya lihat include('some-file.php');- tidak perlu tanda kurung, ini adalah konstruksi bahasa! include 'some-file.php';apakah pekerjaan itu baik-baik saja, ditambah IMO terlihat lebih rapi juga;)
TheDeadMedic

Jawaban:

18

Menggunakan fungsi generik berarti membuang lapisan WP API:

  • get_header kait akan hilang;
  • kompatibilitas dengan mengambil tajuk yang berbeda dengan nama ( "header-{$name}.php") akan hilang;
  • penggunaan locate_template()akan hilang, yang kemungkinan akan merusak kompatibilitas dengan tema anak.

Anda selalu dapat melihat sumber untuk melihat apa sebenarnya fungsinya.

WordPress menggunakan fungsi sendiri bukan hanya karena. Biasanya karena alasan kompatibilitas atau fungsi.

Jarang
sumber
Saya telah memanggil header alternatif dengan pernyataan menyertakan php bukan get_headerdan ini menjelaskan mengapa saya telah mendapatkan beberapa perilaku aneh.
matt
2

Anda juga dapat menggunakan fungsi get_header () untuk mendapatkan file header yang berbeda. Beri nama file header khusus header-whatever.php, lalu gunakan

get_header('whatever');

dan WP akan menggunakan file header-whatever.php alih-alih header.php.

Perhatikan bahwa sintaksnya miring - Anda akan berpikir Anda harus meletakkan nama file di sana, tetapi tidak - Anda perlu nama setelah tanda hubung saja. Saya ingin saat hidup saya kembali sekarang :(

sakit
sumber
ohh thx! tanda hubung sialan. mungkin itu akan meringankan hari Anda ketika Anda tahu Anda telah menyelamatkan seseorang beberapa jam? :)
0

Alasan utama adalah bahwa Anda dapat menghubungkan ke get_header, yang berarti Anda dapat melakukan hal-hal header-y dalam tema anak, atau file fungsi terpisah tanpa perlu mengedit file tema induk.

Anda tidak ingin mengedit file tema orang tua karena itu membuat lebih sulit untuk memperbaruinya, karena Anda perlu menerapkan kembali perubahan Anda. Jika perubahan itu diisolasi dalam tema anak, itu membuat memutakhirkan JAUH lebih mudah

anu
sumber