Wordpress Eklenti Yazarlığı
- Cumartesi Eki 31,2009 03:44 AM
- yazar: Berkant Aydin
- kategori: Wordpress
Wordpress için yazılan eklentilerin birtakım standartları vardır, bu standartlara uygun olarak Wordpress eklentisi yazılabilir. Aynı zamanda eklenti yazarken mümkün olduğunca wordpress’in fonksiyonlarını kullanmak faydalı olacaktır. Facebook API’lerine oldukça benzerdir ve kolaydır.
Wordpress eklentisi aşağıdaki ifadeler ile başlamalıdır.
<?php /* Plugin Name: Admin Naber? Plugin URI: http://noi.snowbattle.com Description: Eklenti ile ilgili açıklama Author: Berkant AYDIN - Noimpos Version: 1.0 Author URI: http://noi.snowbattle.com */ ?>
Buradaki ifadelerin anlamları şöyledir;
* Plugin Name: Eklentinin ismini içermelidir. Eklenti ismi, eklentiyi açıklayan bir veya iki kelimeden oluşmalıdır.
* Plugin URI: Eklentinin web adresi.
* Description: Eklentinin ne yaptığını anlatan bir açıklama.
* Author: Eklentinin yazarı.
* Version: Eklentinin versiyonu (1.0, 1.1 vs. gibi)
* Author URI: Eklenti yazarının web sitesi
Yukarıdaki ifadeler ile eklenti yazımına başlanmış oldu, bundan sonraki aşama eklentinin ilk aşamada ne iş yapacağının ayarlanmasıdır. Yani eklenti Aktif edildiğinde oluşturulması gereken tablolar, kayıtlar vs. işler varsa bunları yapacak olan kod bloğunun yazılmasıdır. Bu kod bir fonksiyon içerisinde yazılmalı ve fonksiyon wp’da yer alan add_action API ile çağırılmalıdır.
<?php
function eklentiKurulum() {
// Eklenti aktif edildiğinde yapılması gereken işlemler
add_option('secenek_adi', 'degeri');
}
?>
Yukarıdaki eklentiKurulum fonksiyonu içerisine, eklenti aktif edildiğinde yapılacak işlemler yazılır. Örneğin eklenti için bir seçenek kaydedilecekse bunun için yukarıdaki gibi bir satır yazılmalıdır.
<?php
if (isset($_GET['activate']) &amp;amp;amp;amp;&amp;amp;amp;amp; $_GET['activate'] == ‘true’) {
add_action('init', 'eklentiKurulum');
}
?>
Eklentinin aktif olup olmadığını kontrol eden fonksiyonu çağırmak için wp içerisinde yer alan add_action metodu kullanılır. Bu metod init parametresi ile çalıştırılır. Sıra eklentinin asıl yapacağı işi tanımlamaya geldi. Aslında yazılmış olan bir ya da daha fazla fonksiyon eklenti içerisinde çağırılabilir. Yazılan eklenti admin yani yönetim panelinin üst kısmına sadece “Admin Naber?” yazacak. Aşağıdaki gibi bir bunun için yeterli olacaktır.
Yukarıdaki kod ile eklentimizi tamamlamış olduk, bu eklenti admin panelinin sağ üst kısmına Admin Naber? yazacaktır. AdminNaberCss fonksiyonu ise bizim AdminNaber fonksiyonu ile yazdırılan <p> tag’ı içinde tanımlı olan AdminNaberCSS’ini admin_head kancasına (hook) yazar.
Eklentiler için genellikle, ilgili eklentinin seçeneklerinin ayarlandığı bir ayar ekranı da olur. Bu ayarlama ekranı Admin / Yönetim panelindeki menülere alt menü olarak eklenir. Bir eklentiye alt menü oluşturmak için aşağıdaki gibi bir kod kullanılabilir;
<?php
function menuEkle() {
add_submenu_page('options-general.php', 'Admin Naber?', 'Admin Naber?', 10, __FILE__, 'AdminNaberMenu');
}
add_action('admin_menu', 'menuEkle');
?>
Yukarıdaki satır ile Ayarlar (Options) menüsüne 10 yetkisiyle (sistemdeki en üst düzey yetkidir) Admin Naber? adında bir alt menu oluşturulmuştur. Admin Naber? menüsü ise AdminNaberMenu fonksiyonunu kullanmaktadır. AdminNaberMenu fonksiyonu içerisinde, eklenti ile ilgili ayarlamaların kodu yer almalıdır. Örneğin;
<?php
function AdminNaberMenu() {
// bu kısımda eklenti ile ilgili seçenekler yer almalıdır.
function AdminNaber() {
echo "<p id='adminnaber'>Admin Naber?</p>";
}
add_action('admin_footer', 'AdminNaber');
function AdminNaberCss() {
echo "
<style type='text/css'>
#adminnedir {
position: absolute;
top: 2.3em;
margin: 0; padding: 0;
right: 1em;
font-size: 16px;
color: #f1f1f1;
}
</style>
";
}
add_action('admin_head', 'AdminNaberCss');
}
?>
Yorum Bırakın