Merhaba arkadaşlar, bu yazımızda çoğu kullanıcı tarafından sorulan “WordPress Görsel Metin Editörüne Buton Ekleme” konusunu işleyeceğim. Editörümüzün adı TinyMCE. Eklemenin işlem kısmını PHP ile yapacağız ancak bize TinyMCE ile ilgili bir kısım jQuery kodları gerekli. Bu kodlara TinyMCE’nin kendi codex sayfasından ulaşabilirsiniz. Girdiğiniz sayfada bölümler belirtilmiş. Bizim işimize yarayacak kısım Plugin kısmı olacağı için kodlara oradan bakmanızı tavsiye ederim.

Hemen başlayalım.. İlk olarak temamızın functions.php dosyasını açıyoruz ve kod yazmaya başlıyoruz.

İşlem yaptıracağımız PHP kodlarını girmemiz gerekli ve benim oluşturmak istediğim basit butonun işlevi tıklandığı zaman

[P-HP ][/ P-HP] şeklinde taglar açacak. (Syntax Eklentisini kullandığım için araya boşluk ve “-” koymak zorunda kaldım.) Bizde içerisine istediğimiz kodları ekleyebileceğiz. Bu işlemi yapmanın wordpressdeki adına Hook deniyor. Bizde artık kendi WordPress Hook‘umuzu yapabileceğiz.


add_action('init','ozellik_adi');
add_filter( 'tiny_mce_version', 'my_refresh_mce');



ile “init” işlemi gerçekleştirerek eklememize küçük bir başlangıç yaptık. Ayrı ayrı fonksiyonlar oluşturarak yapacağımız bu işlem için eklememiz gereken sabit kodlar mevcuttur.



function ozellik_adi() {
if ( ! current_user_can('edit_posts') && ! current_user_can('edit_pages') ) {
return;
}

if ( get_user_option('rich_editing') == 'true' ) {
add_filter( 'mce_external_plugins', 'ekle' );
add_filter( 'mce_buttons', 'tekrarEt' );
}
}

function tekrarEt( $butonum ) {
array_push( $butonum , "|", "php" );
return $butonum ;
}

function ekle( $ekle ) {
$ekle ['php'] = get_bloginfo( 'template_url' ) . '/editor-ekle.js';
return $ekle;
}



functions.php dosyamıza sadece bu kodları eklememiz yeterli. Bunlar sabit kodlardır ve hiç bir değişiklik yapmamız gerekmemektedir. İlk başta belirttiğim jQuery kısmına gelecek olursak, tema dizininde editor-ekle.js isimli bir javascript dosyası oluşturunuz ve içerisine aşağıda kodları ekleyiniz.

(function() {

tinymce.create('tinymce.plugins.php', {
init : function(ed, url) {
ed.addButton('php', {
title : 'php butonum',
image : url+'/phpbutonum.png',
onclick : function() {
ed.selection.setContent('1');
}
});
},
createControl : function(n, cm) {
return null;
}
});
tinymce.PluginManager.add('php', tinymce.plugins.php);

})();



Bu kodları ekledikten sonra Görsel metin editörünüzde “image : url+’/phpbutonum.png’” yolunda belirttiğiniz görsel çıkacaktır ve ona tıkladığınızda ie php tagları açılıp kapanacaktır.Dosyaları buradan indirebilirsiniz.

Ayrıca bir alternatif olarak otomatik olarak eklemeyi sağlayan bu eklentiyide indirebilirsiniz.

TinyMCE Advanced

Umarım yararlı bir çalışma olmuştur.

Kaynak: http://erenkeskin.com/wordpress-gorsel-editore-buton-ekleme/