Saya mencoba untuk memahami beberapa fungsi di WordPress, tetapi saya tidak mengerti apa yang sebenarnya dilakukan apply_filters (...) .
Apakah seseorang dapat menjelaskan hal ini untuk saya dengan beberapa contoh?
Saya mencoba untuk memahami beberapa fungsi di WordPress, tetapi saya tidak mengerti apa yang sebenarnya dilakukan apply_filters (...) .
Apakah seseorang dapat menjelaskan hal ini untuk saya dengan beberapa contoh?
apply_filters()
merupakan nama yang sangat menyesatkan untuk fungsi tersebut karena menerapkan filter dan tindakan yang terkait dengan fungsi targetJawaban:
apply_filters($tag, $value)
meneruskan argumen 'nilai' ke setiap fungsi 'terkait' (menggunakanadd_filter
) ke dalam 'tag' filter yang ditentukan. Setiap fungsi melakukan beberapa pemrosesan pada nilai dan mengembalikan nilai yang dimodifikasi untuk diteruskan ke fungsi berikutnya dalam urutan.Misalnya, secara default (di WordPress 2.9)
the_content
filter meneruskan nilai melalui urutan fungsi berikut:sumber
apply_filters($value)
menghapus nilai ...jawaban terlambat
Penjelasan singkat
apply_filters()
berinteraksi denganglobal $wp_filters
array. Pada dasarnya ini hanya memeriksa array jika filter saat ini (atau hook) memiliki aksi (/ fungsi panggilan balik) terpasang dan kemudian memanggilnya.Penjelasan panjang
Saat Anda memasang callback / action ke filter atau hook, maka Anda cukup menambahkan nama callback ke array filter global. Ketika kemudian, dalam kode (misalnya template, file inti atau plugin) panggilan ke
do_action()
atauapply_filters()
terjadi, maka WordPress mencari melalui array dan memanggil callback. Satu-satunya hal yang lebih istimewa dengan filter daripada dengan hook adalah, ia mengembalikan nilai (untuk penanganan lebih lanjut) daripada hanya mengaktifkan callback. Kesimpulannya: Hooks untuk memasukkan data, sedangkan filter untuk mengubah data.sumber
Inilah yang saya kumpulkan, setelah mempertimbangkan jawaban paling populer dan sumber daya tambahan:
<p>
tag, wajah tersenyum akan diubah menjadi ikon, dll.sumber
Dalam istilah yang paling dasar, apply_filters digunakan untuk menginisialisasi pengait filter ... add_filter memberikan fungsi baru ke pengait yang telah dibuat.
sumber