Rumah >Tutorial CMS >WordTekan >Demystifying the WordPress Hook System

Demystifying the WordPress Hook System

尊渡假赌尊渡假赌尊渡假赌
尊渡假赌尊渡假赌尊渡假赌asal
2025-02-15 11:27:12317semak imbas

Demystifying the WordPress Hook System

Penjelasan terperinci mengenai sistem cangkuk WordPress: tindakan, penapis dan cangkuk

WordPress menggunakan corak seni bina yang didorong oleh peristiwa di mana komponen teras, tema, dan plugin mencetuskan peristiwa melalui cangkuk (cangkuk) pada tahap pelaksanaan atau tafsiran PHP yang berlainan. Cangkuk terutamanya dibahagikan kepada tindakan dan penapis: Tindakan digunakan untuk menambah atau mengeluarkan fungsi pada tahap pelaksanaan proses yang berlainan;

sistem cangkuk WordPress meningkatkan skalabilitas platform, yang membolehkan ciri -ciri ditambah, dikeluarkan, dan diubahsuai dalam kod teras, plugin, dan tema, jadi pemaju boleh memanjangkan plugin dan tema tanpa mengubah suai kod sumber teras.

Sistem cangkuk dicetuskan pada tahap pelaksanaan WordPress yang berlainan, dan biasanya digunakan dengan fungsi

dan do_actions() PHP. Peristiwa -peristiwa ini boleh dilanggan atau dipasang melalui apply_filters() dan add_action(). Artikel ini akan menunjukkan bagaimana tindakan dan penapis digunakan melalui contoh. add_filter()

makna cangkuk, tindakan dan penapis

cangkuk merujuk kepada peristiwa yang dicetuskan oleh teras WordPress, tema, dan plugin pada tahap yang berlainan pelaksanaan PHP atau tafsiran. Apabila peristiwa -peristiwa ini dicetuskan, semua fungsi dan/atau kaedah kelas yang dipasang pada peristiwa -peristiwa ini akan dilaksanakan dalam urutan yang betul.

Tindakan dan penapis adalah dua jenis cangkuk: Tindakan digunakan untuk menambah atau menghapuskan fungsi pada tahap pelaksanaan proses yang berlainan;

kepentingan sistem cangkuk wordpress

Kepentingan sistem cangkuk WordPress terletak pada skalabilitasnya. Ia membolehkan menambah dan mengeluarkan ciri -ciri, serta tweaking/mengubahsuai pelaksanaan ciri -ciri dalam teras WordPress, plugin, dan tema.

Menulis plugin dan tema yang boleh dilanjutkan yang membolehkan pemaju lain memperbaiki dan memperluaskannya tanpa mengedit kod sumber teras.

Sebagai contoh, plugin Gateway Pembayaran Woocommerce 2Checkout saya tidak termasuk ikon yang menunjukkan jenis kad kredit yang disokong pada halaman checkout, kerana saya fikir ini tidak perlu. Walau bagaimanapun, saya menambah penapis sekiranya pengguna mempunyai keperluan yang berbeza.

kami menerima permintaan sokongan pelanggan agar ikon dimasukkan. Kami dapat menyediakan pelanggan dengan coretan kod yang cangkuk ke penapis dan mengandungi ikon. Demystifying the WordPress Hook System

Perbincangan mendalam mengenai Sistem Hook WordPress

Pada tahap pelaksanaan WordPress yang berlainan, sejumlah besar peristiwa dicetuskan, dan fungsi dan

php biasanya digunakan. Peristiwa -peristiwa ini boleh dilanggan atau dipasang melalui

dan do_actions(). apply_filters() add_action() Berikut adalah contoh tindakan dalam plugin. Tindakan ini kebakaran selepas berjaya mendaftarkan pengguna dalam Plugin Pendaftaran Pengguna Profil saya: add_filter()

Semua fungsi yang dilampirkan pada tindakan ini diproses semasa pelaksanaan WordPress.

the_content di WordPress Core adalah contoh cangkuk penapis yang menapis kandungan setiap jawatan:

<code class="language-php">/**
 * Fires after a user registration is completed.
 *
 * @param int $form_id ID of the registration form.
 * @param mixed $user_data array of registered user info.
 * @param int $user_id ID of the registered user.
 */
do_action( 'pp_after_registration', $form_id, $user_data, $user_id );</code>

NOTA:

Dalam do_actions(), parameter pertama adalah nama cangkuk tindakan, dan parameter berikutnya adalah pembolehubah yang boleh digunakan untuk menyambungkan fungsi tindakan.

Dalam apply_filters(), parameter pertama adalah nama cangkuk penapis, dan parameter kedua adalah data atau nilai yang fungsi dilampirkan pada penapis untuk pengubahsuaian atau aplikasi. Parameter seterusnya adalah pembolehubah/nilai yang boleh digunakan untuk melampirkan ke penapis.

Contoh Hook Action

Contoh #1:

Menggunakan tindakan pp_after_registration Plugin Profilpress, dengan mengandaikan kami ingin melaksanakan ciri, pengguna akan menerima mesej selamat datang sejurus selepas mendaftar (melalui perkhidmatan SMS Hypothetical Dolio). Cangkuk fungsi kami boleh seperti ini:

<code class="language-php">    /**
     * Filter the post content.
     *
     * @since 0.71
     *
     * @param string $content Content of the current post.
     */
    $content = apply_filters( 'the_content', $content );</code>
Parameter ketiga

add_action adalah keutamaan cangkuk, yang menentukan susunan pelaksanaan fungsi yang dilampirkan pada pp_after_registration tindakan. Meninggalkan kosong akan lalai hingga 10. Parameter keempat menentukan bilangan parameter yang akan diterima oleh cangkuk fungsi. Meninggalkan kosong akan lalai kepada 1.

Contoh #2:

WordPress mengandungi cangkuk tindakan berikut: wp_head dan wp_footer, yang dipecat sebelum tag kepala depan dan akhir tag badan, masing-masing.

cangkuk ini boleh digunakan untuk memaparkan skrip dan data di lokasi strategik ini.

(Kandungan berikut adalah serupa dengan teks asal. Untuk mengelakkan pertindihan, contoh yang tinggal dan kesimpulan cangkuk tindakan dan cangkuk penapis ditinggalkan di sini)

(bahagian Soalan Lazim juga ditinggalkan kerana alasan panjang)

Atas ialah kandungan terperinci Demystifying the WordPress Hook System. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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