Saya sedang mengembangkan beberapa plugin open-source dan tema (semua bagian dari "suite") yang semuanya menggunakan perpustakaan PHP pihak ketiga yang sama. Saya bertanya-tanya apa cara terbaik untuk memasukkannya dalam Wordpress. Berikut ini beberapa pemikiran:
- letakkan di salah satu plugin dan minta plugin itu diinstal dan diaktifkan
- buat "inti" plugin khusus yang tidak termasuk kecuali memasukkannya
- letakkan langsung di
wp-content
Adakah pemikiran tentang hal itu?
Jawaban:
Jika setiap plugin / tema berfungsi sendiri, maka Anda mungkin harus menghapus perpustakaan di setiap tema / plugin.
Kemudian cukup periksa untuk melihat apakah itu kelas atau fungsi dari perpustakaan pihak ketiga ada sebelum membutuhkannya.
atau
Atau, Anda bisa membungkus setiap fungsi / kelas / variabel / konstan dari pustaka pihak ketiga dalam tanda centang untuk melihat apakah ada, seperti fungsi pluggable .
Jika semua plugin dan tema bergantung satu sama lain, maka itu tidak masuk akal untuk membaginya dan Anda mungkin harus memikirkan kembali itu.
sumber
library
folder di setiap plugin / tema. Kemudian di file plugin utama Anda, jalankan pemeriksaan dan sertakan jika perlu.Bind semua kode tergantung ke tindakan di plugin perpustakaan.
Kode contoh untuk plugin perpustakaan:
Dalam kode Anda yang tergantung, jangan lakukan apa pun sebelum tindakan dipanggil:
Perpustakaan menangani semua bagian dasar: memeriksa versi PHP yang tepat, konstanta WordPress, pengaturan multi-situs dll.
Kode lain tidak akan melakukan apa pun jika tindakan
'library_loaded'
tidak dipanggil.sumber
Menambahkan untuk menjawab dengan chrisguitarguy, jika perpustakaan Anda dalam bentuk kelas PHP, maka Anda dapat menggunakan spl_autoload_register () untuk memuat kelas-kelas tersebut jika belum dimuat oleh plugin lain. Anda kemudian dapat menggabungkan pustaka ke dalam plugin Anda dan hanya menggunakannya, bergantung pada pemuat kelas untuk memasukkannya saat yang tepat. Anda juga dapat menggunakan pemuat kelas untuk memuat kelas plugin Anda sendiri.
misalnya
sumber
Karena tidak ada direktori vendor resmi , saya akan pergi untuk plugin "inti" yang tidak termasuk perpustakaan. Anda kemudian membuat plugin Anda membutuhkan plugin inti itu.
Menempatkan pustaka di salah satu plugin nyata Anda mengharuskan pengguna untuk mengaktifkan plugin itu meskipun mereka mungkin tidak pernah ingin menggunakan fungsinya. Plugin inti terpisah tampaknya lebih bersih.
Memasukkannya langsung ke konten wp sepertinya solusi terburuk.
sumber