Ana Sayfa » »
Ağu
2
2013

Eklentiler Listesinde Eklentimiz İçin Ayarlar (Settings) Linki Oluşturuyoruz

WordPress eklentileri yazanlar için güzel bir ipucum var. Yönetim Paneli / Eklentiler sayfasına girdiğimizde sitede yüklü eklentiler görüntülenir, bu sayfada eklentiler üzerinde yönetim işlemlerimizi yaparız. Genelde bir eklentiyi etkinleştirdiğimizde, eklenti, yönetim paneli menülerine seçenekler ekler, çoğu eklenti Ayarlar menüsüne ya da Araçlar menüsüne alt menü eklemekte. Benim sevmediğim nokta ise bu linki nereye eklediğini, menülerde dolaşarak bulmak. Halbuki bazı eklentileri etkinleştirdiğimizde, etkinleştir linkinin yanında bir de Settings (Ayarlar) linki görünür. Peki bu link nasıl eklenir?

Kendi eklentinizi yazdığınızda, eklenti kullanıcılarına böyle bir iyilik yapıp, bir Ayarlar linki eklemek isterseniz, yapmanız gereken aşağıdaki kodu kendinize göre düzenleyip, eklenti kodlarınız arasına eklemek.

function yakuphoca_ayarlar_linki_ekle($links) { 
  $ayarlarlinkim = '<a href="options-general.php?page=eklentinizin_dosya_adi.php">Ayarlar</a>'; 
  array_unshift($links, $ayarlarlinkim); 
  return $links; 
}

add_filter('plugin_action_links_'.plugin_basename(__FILE__), 'yakuphoca_ayarlar_linki_ekle' );

Fonksiyon içerisindeki eklentinizin_dosya_adi.php yerine kendi dosyanızın adını yazın ya da en iyisi eklentinizin ayarlar sayfasına giden menü seçeneğinin linkini kopyalayıp, href özelliği içerisine yapıştırın. Örnekte, ayar sayfanızın menü linkinin Ayarlar ana menüsünün altında olduğu düşünülmüştür. Diyelim ki Araçlar altına ayarlar sayfanızın linkini eklemişseniz options-general.php yerine tools.php yazmalısınız.

Kodu ekleyip, Yönetim panelinden Eklentiler sayfasına girdiğinizde, eklentinizin isminin hemen altında ayarlar linkini görebileceksiniz.

WordPress Eklentimizin Ayarlar Linki

Eğer eklentinizde sınıf yapısını kullanıyorsanız, yukarıdaki fonksiyonu sınıfınızın içerisine kopyalayıp, sınıfınızın __construct() fonksiyonu ya da menü seçeneklerini nerede oluşturuyorsanız o fonksiyon içerisine yukarıdaki add_filter ile başlayan satırı aşağıdaki şekilde yazın.

add_filter('plugin_action_links_'.plugin_basename(__FILE__), array(&$this,'yakuphoca_ayarlar_linki_ekle') );

Benim eklentimin __construct() fonksiyonumun kodları aşağıdaki gibi oldu.

public function __construct()
  {
    add_action( 'admin_menu', array( $this, 'admin_menu' ) );
    add_filter('plugin_action_links_'.plugin_basename(__FILE__), array(&$this,'add_plugin_settings_link') );
  } 

Böylece eklentimizin kullanışlılığını bir adım öteye götürmüş olduk.

Bu yazımı beğendiyseniz, bu kategoride yer alan Besleme ve Aramalardan Bazı Kategorilerin Yazılarını Gizleme başlıklı functions.php, kategori ve kategori gizleme konularında bilgi veren bir önceki yazımı da okumanızı tavsiye ederim.

Yorumunu Yaz

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Yukarı Çık