04 Kasım 2008

WordPress 2.7 Favori İşlemler

WordPress Yorum Ekle

WordPress'in yeni sürümü 10 Kasım gibi yayımlanmaya başlanacak ancak geçenlerde yayımlanan WP 2.7 Beta 1 sürümüyle ilgili izlenimlerimden bahsetmiştim. Orada yazmayı unuttuğum konulardan biri de resimde de görebileceğiniz gibi sık kullanılan işlemler için açılan bir menünün olması. Alışınca gayet güzel bir özellik olabilir. Bu menüye yeni seçenekler eklemek ister miydiniz?
Cevabınız evet ise sağolsun Ozh'un sitesinde bahsettiği basit bir yöntemle kolaylıkla yeni seçenekler ekleyebiliyor ya da mevcutları kaldırabiliyorsunuz.
WP 2.7'nin şu an Türkçe sürümü olmadığı için resim ve kodlarda menü seçenekleri İngilizce karşılıklarıyla yer almaktadır. Menüde varsayılan olarak "Add New Post - Yeni Yazı", "Add New Page - Yeni Sayfa", "Manage Comments - Yorumları Yönet" seçenekleri bulunnmaktadır.

Sistem

Menü seçenekleri aşağıdaki gibi bir dizi ile belirleniyor. Yeni sürüm ile birlikte favorite_actions() isimli yen filtre eklenmiş. İşte bu menüde kullanılan diziyi bu filtre ile kontrol edebiliyoruz. Aşağıdaki dizinin yapısı ise şöyle:
array( url => array ( title, level ) ).
Dizideki, url ifadesi seçeneğe tıklandığında gidilecek sayfa adresini, title menüde görülecek ifade (örn: 'Eklentileri Yönet'), level ise bu menü seçeneğini görebilecek üye düzeyini belirtiyor yani bu seçeneği yetkisi olmayanlardan gizleyebilirsiniz. Yetkilerle ilgili olarak şuradaki sayfayı inceleyebilirsiniz. Aşağıdaki dizi değişkendeki 'edit_posts', 'edit_pages', 'moderate_comments' ifadeleri yetkileri belirtmektedir.

  1. $actions = array(
  2.     'post-new.php' => array(__('Add New Post'), 'edit_posts'),
  3.     'page-new.php' => array(__('Add New Page'), 'edit_pages'),
  4.     'edit-comments.php' => array(__('Manage Comments'), 'moderate_comments')
  5. );

Kendi Seçeneklerimizi Ekleyelim

Bu işlem için Ozh bir eklentimsi (ben uydurdum) yazarak, nasıl ekleme, çıkarma yapılacağını anlatmış. Eklenti kodları ve kodların açıklaması aşağıda, kodlar çok basit, istediğiniz gibi at koşturabilirsiniz.

  1. <?php
  2. /*
  3. Plugin Name: Sample Favorite Actions
  4. Plugin URI: http://planetozh.com/blog/
  5. Description: Example plugin showing how to modify the favorite actions
  6. Author: Ozh
  7. Author URI: http://planetozh.com/
  8. */
  9. add_filter('favorite_actions', 'ozh_sample_fav');
  10. //favorite_actions filtresine bir kanca atıyor,
  11. //ve bu filtre çalıştırıldığında 'ozh_sample_fav'
  12. //fonksiyonunun da çalıştırılmasını sağlıyoruz.
  13.  
  14. function ozh_sample_fav($actions) {
  15. //fonksiyonumuz $actions dizisini alıyor
  16.     unset($actions&#91;'page-new.php']);
  17.     // "Add new page" seçeneğini siliyoruz
  18.  
  19.     $actions&#91;'admin.php?page=blah/blah.php'] = array('Eklentimin Ayarları', 'manage_options');
  20.     // Eklentimizin seçenekler sayfasının bağlantı adresini
  21.        // ekliyoruz ve sadece ayarlama yetkisi olan kullanıcıların
  22.        // görebilmesini sağladık.
  23.     return $actions;
  24.       //Değişen $actions dizisini geri gönderiyoruz.
  25. }
  26. ?>

Ozh'un bir de dileği var, diyor ki "keşke birisi, yönetim panelinde kullanılan bağlantıların sıklığını belirleyip, bu menüyü ona göre oluştursa ne iyi olur". Sanırım Microsoft Office'nin akıllı menü sistemi gibi bir şey istiyor. Ne diyelim belki yapan çıkar.
Gördüğünüz gibi birkaç satırlık basit kod ile istediğinizi yapabiliyorsunuz. Ben bu işi çok sevdim. Siz de seveceksiniz eminim.
Kaynak: Ozh


Bu yazının kısa bağlantısı http://www.yakupgovler.com/?p=462.

Yazılarımı RSS aboneliği ile takip edebilir, yeni yazılarıma kolaylıkla ulaşabilirsiniz. Bunun için ise RSS adresimi kullanabilirsiniz.