Untuk apa folder wordpress wp-include?

15

Untuk apa folder wordpress wp-include? Artinya, apa tujuan arsitektur mendasarnya, misalnya mengapa tidak semuanya dalam tema atau folder admin?

Bisakah pengembang plugin mengandalkan kontennya (mis. JQuery) dan untuk berapa lama?

Saya juga ingin tahu, siapa yang memutuskan apa yang terjadi di sana dan bagaimana hal itu dipertahankan ketika Wordpress berubah, apakah semua ini didokumentasikan di suatu tempat sebagai dokumen kebijakan?

Simon Gibbs
sumber

Jawaban:

17

wp-includesberisi semua yang diperlukan untuk menjalankan WordPress melalui frontend (dan kemudian beberapa). Ini adalah wilayah WordPress Core, dan seperti kata pepatah, jangan pernah memodifikasi inti dalam keadaan apa pun.

Meskipun wp-contentdapat menentukan plugin dan tema, API itu sendiri dan sebagian besar inti WordPress berada di folder itu. Ini tergantung pada hampir keseluruhan WordPress. Semua fungsi standar Anda dan dependensinya akan ditemukan di folder ini.

Ini membuatnya menjadi sumber daya berharga untuk penelitian dan mencari hal-hal.

wp-admin dapat mendefinisikan item tambahan tetapi tidak penting untuk menjalankan frontend

./wp-admin    - Admin code
./wp-content  - User-defined code and content
./wp-includes - Common files

Adapun seberapa dapat diandalkan file dalam folder itu, Anda tidak harus bergantung pada file di folder itu. Anda seharusnya tidak perlu menyertakan file atau path dari wp-include dan jika Anda berusaha atau perlu melakukannya, maka Anda telah melakukan sesuatu yang sangat salah dan harus berhenti dan kembali.

Meskipun file dalam folder itu dapat berubah tanpa peringatan, ini seharusnya tidak ada konsekuensi, karena API yang terkandung tetap kompatibel untuk waktu yang signifikan.

Di luar pembaruan ke WordPress, wp-includesjangan pernah dimodifikasi dan idealnya hanya dibaca.

Jika Anda perlu menambahkan ketergantungan pada kode Anda, andalkan versi di wp-include daripada menambahkan milik Anda. mis. jangan menyertakan jQuery khusus, gunakan yang dibundel dengan WordPress (jangan de-register dan registrasi ulang juga).

Modifikasi ke wp-include dapat menyebabkan risiko keamanan, penurunan kinerja, plugin / tema yang rusak, dll

Perubahan pada paket dan perpustakaan termasuk diumumkan sebelum rilis. Ketergantungan lama tidak lagi diperlukan (seperti pemilih warna yang lama) disimpan, tetapi ditandai tidak digunakan lagi untuk mencegah kerusakan kode

Tom J Nowell
sumber
5

The wp-includesdirektori termasuk paket yang disertakan oleh inti . Tim inti mengelola paket-paket yang termasuk dalam wp-includes. Tema dan Plugin dapat mengandalkan paket-paket yang tersedia untuk versi WordPress apa pun.

Itulah alasan besar mengapa sangat penting untuk enqueue hanya inti-dibundel versi script, menggunakan inti pendaftaran naskah berdasarkan definisi, seperti: wp_enqueue_script( 'jquery' ), sehingga Theme / Plugin akan selalu menggunakan versi dibundel dengan inti, tidak peduli apa versi WordPress sedang berjalan.

Chip Bennett
sumber
3

WordPress, sebagai aplikasi, dibangun dari beberapa bagian yang bergerak. The /wp-includesfolder berisi fungsi umum untuk API WordPress (yang Anda gunakan dalam tema / plugin) dan admin WordPress.

Pada dasarnya:

./wp-admin    - Admin code
./wp-content  - User-defined code and content
./wp-includes - Common files

The /wp-includesdirektori di mana perpustakaan pihak ke-3 yang berguna (yaitu SimplePie untuk RSS dan IncutioRPC untuk XML-RPC) disimpan. Itu juga di mana banyak WordPress API (yaitu WP_Http, WP_Filesystem) didefinisikan.

Bisakah pengembang plugin mengandalkan kontennya? dan untuk berapa lama?

Iya. File-file ini adalah yang mendefinisikan WordPress API di tempat pertama. Tim inti berusaha keras untuk mempertahankan kompatibilitas ke belakang, jadi jika ada perubahan yang diperkenalkan di WordPress yang akan merusak apa yang Anda gunakan, Anda akan tahu sebelumnya dengan baik.

Saya juga ingin tahu, siapa yang memutuskan apa yang terjadi di sana dan bagaimana hal itu dipertahankan ketika Wordpress berubah, apakah semua ini didokumentasikan di suatu tempat sebagai dokumen kebijakan?

Keputusan untuk API WordPress ditentukan oleh tim pengembang. Anda biasanya dapat mengikuti perubahan di http://make.wordpress.org/core . Perpustakaan selalu dikelola karena mengubah perpustakaan ini adalah apa yang mengubah WordPress.

EAMann
sumber
Bukan file yang mendefinisikan API, fungsi dan kelas dalam file tersebut yang melakukannya. File-file tersebut mungkin bergerak atau menghilang tanpa ada perubahan pada API.
fuxia
0

wp-includesadalah direktori yang berisi sebagian besar fungsi utama WordPress. Di sinilah semua kode WordPress utama hidup.

WordPress melakukan pekerjaan yang sangat baik untuk menjaga kompatibilitas mundur antar versi. Anda dapat menggunakan fungsi yang disertakan dalam folder ini untuk membuat plugin (itulah cara Anda mengaitkannya ke sistem).

WordPress Trac adalah area utama yang menentukan bagaimana WordPress bergerak maju, jadi jika Anda memiliki pendapat / tambahan, terlibatlah di sana :)

Zach
sumber