Rumah >Tutorial CMS >WordTekan >Pembangunan plugin WordPress
Jika anda pernah menggunakan WordPress untuk membina tapak dengan cepat, kemungkinan anda telah menggunakan salah satu daripada banyak plugin yang ditawarkan untuk memperluaskan fungsi perisian blog yang popular ini. Plugin adalah salah satu daripada banyak perkara yang menjadikan WordPress begitu menarik. Jika anda memerlukan galeri imej atau borang hubungan, mungkin ada plugin yang ada yang boleh anda muat turun dan gunakan. Ada kalanya, bagaimanapun, apabila anda tidak dapat mencari apa yang anda perlukan dari plugin sedia ada. Artikel ini akan menunjukkan kepada anda bagaimana untuk membuat plugin WordPress anda sendiri dengan berjalan anda melalui contoh untuk memaparkan beberapa teks menggunakan widget di bar sisi.
Takeaways Key
fail plugin utama
Plugin dikesan secara automatik dari direktori WP-Content/Plugins dalam direktori pemasangan WordPress anda. Apabila membuat plugin baru, anda harus membuat subdirektori baru di sana. Nama subdirektori boleh menjadi apa sahaja yang anda mahukan; Pilihan yang masuk akal adalah menyebutnya nama plugin anda. Cuba untuk mengelakkan nama generik seperti "TextWidget" atau "ShoppingCart" kerana ini mungkin telah digunakan dengan plugin lain dan akan menyebabkan masalah sekiranya anda ingin mengedarkannya kepada pengguna lain WordPress. Untuk contoh ini, buat subdirektori bernama phpmaster_exampleWidget.
WordPress mengesan bahawa plugin boleh didapati dari deskriptor yang diletakkan dalam komen fail PHP. Deskriptor mesti memberikan maklumat asas tentang apa yang dilakukan oleh plugin, yang menciptanya, dan maklumat lesennya. Inilah yang digunakan WordPress untuk mengenal pasti bahawa plugin hadir dan bersedia untuk diaktifkan. Plugin Contoh ini akan mengandungi definisi di bahagian atas fail yang diletakkan di direktori phpmaster_exampleWidget yang baru dibuat. Nama fail juga sewenang -wenangnya tetapi disarankan untuk memberikan nama makna. Contoh ini akan memanggil fail widget_init.php.
<span><span><?php
</span></span><span><span>/*
</span></span><span><span>Plugin Name: Simple Text Plugin
</span></span><span><span>Plugin URI: http://www.example.com/textwidget
</span></span><span><span>Description: An example plugin to demonstrate the basics of putting together a plugin in WordPress
</span></span><span><span>Version: 0.1
</span></span><span><span>Author: Tim Smith
</span></span><span><span>Author URI: http://www.example.com
</span></span><span><span>License: GPL2
</span></span><span><span>
</span></span><span><span> Copyright 2011 Tim Smith
</span></span><span><span>
</span></span><span><span> This program is free software; you can redistribute it and/or
</span></span><span><span> modify it under the terms of the GNU General Public License,
</span></span><span><span> version 2, as published by the Free Software Foundation.
</span></span><span><span>
</span></span><span><span> This program is distributed in the hope that it will be useful,
</span></span><span><span> but WITHOUT ANY WARRANTY; without even the implied warranty of
</span></span><span><span> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
</span></span><span><span> GNU General Public License for more details.
</span></span><span><span>
</span></span><span><span> You should have received a copy of the GNU General Public License
</span></span><span><span> along with this program; if not, write to the Free Software
</span></span><span><span> Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
</span></span><span><span> 02110-1301 USA
</span></span><span><span>*/</span></span>
Ini adalah struktur yang diperlukan untuk mana -mana plugin yang akan anda buat untuk WordPress. Sekarang apabila anda log masuk dan melihat skrin Pentadbiran Plugin di WordPress, anda akan melihat plugin baru siap untuk pengaktifan.
Anda dapat melihat semua maklumat yang anda masukkan di bahagian komen yang menerangkan plugin dipaparkan di sini. Anda boleh mengaktifkannya sekarang jika anda mahu, tetapi anda masih perlu menambah beberapa fungsi sebelum melakukan apa -apa.
Fail yang mempunyai definisi ini kini dianggap sebagai titik permulaan bagi mana -mana kod yang berkaitan dengan plugin. Kod yang muncul selepas komen definisi akan dilaksanakan memberi anda peluang untuk memulakan plugin dan ciri -cirinya.
widget WordPress
WordPress menyediakan kelas yang anda boleh melanjutkan bernama WP_WIDGET. Apabila anda melanjutkannya, widget anda sendiri akan tersedia untuk mana -mana bar sisi yang ditawarkan tema anda. Kapal WordPress dengan beberapa widget lalai seperti "jawatan terkini" dan "arkib" yang memanjangkan WP_WIDGET.
Kelas WP_Widget menyediakan empat kaedah yang harus ditindih:
Pembina
Pembina adalah seperti pembina lain yang mungkin anda tulis. Perkara penting yang perlu diingat di sini adalah memanggil pembina induk yang boleh mengambil tiga argumen: pengenalpastian untuk widget, nama mesra widget (ini akan muncul sebagai tajuk widget dalam skrin widget admin), dan array memperincikan sifat widget (yang hanya memerlukan nilai "keterangan").
<span><span><?php
</span></span><span><span>/*
</span></span><span><span>Plugin Name: Simple Text Plugin
</span></span><span><span>Plugin URI: http://www.example.com/textwidget
</span></span><span><span>Description: An example plugin to demonstrate the basics of putting together a plugin in WordPress
</span></span><span><span>Version: 0.1
</span></span><span><span>Author: Tim Smith
</span></span><span><span>Author URI: http://www.example.com
</span></span><span><span>License: GPL2
</span></span><span><span>
</span></span><span><span> Copyright 2011 Tim Smith
</span></span><span><span>
</span></span><span><span> This program is free software; you can redistribute it and/or
</span></span><span><span> modify it under the terms of the GNU General Public License,
</span></span><span><span> version 2, as published by the Free Software Foundation.
</span></span><span><span>
</span></span><span><span> This program is distributed in the hope that it will be useful,
</span></span><span><span> but WITHOUT ANY WARRANTY; without even the implied warranty of
</span></span><span><span> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
</span></span><span><span> GNU General Public License for more details.
</span></span><span><span>
</span></span><span><span> You should have received a copy of the GNU General Public License
</span></span><span><span> along with this program; if not, write to the Free Software
</span></span><span><span> Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
</span></span><span><span> 02110-1301 USA
</span></span><span><span>*/</span></span>
Dengan struktur widget asas di tempat, anda akan mahu mendaftarkan widget dan pastikan ini dilakukan pada masa semua widget lain sedang dimulakan. Mendaftarkan widget dilakukan melalui fungsi register_widget () yang mengambil hujah tunggal, nama kelas yang memanjangkan wp_widget. Panggilan ini untuk mendaftarkan widget mesti dipanggil pada masa yang sesuai, jadi cangkuk WordPress tertentu yang anda mahu gunakan dipanggil "widgets_init". Untuk mengaitkan mendaftarkan widget dengan cangkuk, anda menggunakan add_action () yang mengambil nama cangkuk sebagai hujah pertama dan fungsi untuk dilaksanakan sebagai yang kedua. (Hujah kedua boleh menjadi nama rentetan fungsi atau penutupan.) Kod ini harus terus di bawah deskriptor plugin yang dicipta dalam widget_init.php.
<span><span><?php
</span></span><span><span>class TextWidget extends WP_Widget
</span></span><span><span>{
</span></span><span> <span>public function __construct() {
</span></span><span> <span><span>parent::</span>__construct("text_widget", "Simple Text Widget",
</span></span><span> <span>array("description" => "A simple widget to show how WP Plugins work"));
</span></span><span> <span>}
</span></span><span><span>}</span></span>
Sekarang bahawa ia telah didaftarkan dan dimulakan, anda akan dapat melihat widget anda tersedia untuk digunakan.
Kaedah () Kaedah
Widget Contoh di sini harus membolehkan anda memasukkan tajuk dan beberapa teks yang akan dipaparkan apabila dilihat di blog, jadi untuk dapat meminda kedua -dua aspek widget yang anda perlukan untuk membuat borang untuk meminta nilai -nilai ini. Kaedah Borang () digunakan dalam skrin Pentadbiran Widget untuk memaparkan medan yang kemudiannya boleh digunakan untuk mengubah fungsi widget di laman web itu sendiri. Kaedah ini mengambil satu hujah, pelbagai $ pembolehubah yang berkaitan dengan widget. Apabila borang diserahkan, widget akan memanggil kaedah kemas kini () yang membolehkan anda mengemas kini medan dalam $ contoh dengan nilai baru. Kemudian, widget () akan dipanggil dan akan menggunakan contoh $ untuk memaparkan nilai -nilai.
<span><span><?php
</span></span><span><span>add_action("widgets_init",
</span></span><span> <span>function () { register_widget("TextWidget"); });
</span></span><span><span>?></span></span>
Anda menggunakan kaedah wp_widget's get_field_id () dan get_field_name () untuk membuat ID dan nama untuk medan borang masing -masing. WordPress akan menjana pengecam unik untuk anda supaya tidak bertembung dengan widget lain yang digunakan, dan apabila borang diserahkan nilai -nilai akan mengemas kini item array Instance $ yang berkaitan. Anda boleh menggunakan hujah Instance $ yang diluluskan untuk mengisi medan borang dengan nilai sekiranya mereka sudah ditetapkan.
Inilah bentuk yang kelihatan seperti dalam pandangan admin:
Elemen
Atas ialah kandungan terperinci Pembangunan plugin WordPress. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!