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/