Tôi đã làm theo hướng dẫn về Nettuts về cách thêm nút tùy chỉnh vào TinyMCE ( http://net.tutsplus.com/tutorials/wordpress/wordpress-shortcodes-the-right-way/ )
Nó hoạt động tuyệt vời và tất cả, nhưng tôi muốn thêm nhiều nút và tôi tự hỏi liệu có cách nào thông minh để làm điều này mà không phải lặp đi lặp lại tất cả các mã.
Đây là mã tôi sử dụng để thêm một nút:
add_shortcode("quote", "quote");
function quote( $atts, $content = null ) {
return '<div class="right text">"'.$content.'"</div>';
}
add_action('init', 'add_button');
function add_button() {
if ( current_user_can('edit_posts') && current_user_can('edit_pages') )
{
add_filter('mce_external_plugins', 'add_plugin');
add_filter('mce_buttons_3', 'register_button');
}
}
function register_button($buttons) {
array_push($buttons, "quote");
return $buttons;
}
function add_plugin($plugin_array) {
$plugin_array['quote'] = get_bloginfo('template_url').'/js/customcodes.js';
return $plugin_array;
}
Và sau đó tôi tạo một tệp customcodes.js với mã này trong:
(function() {
tinymce.create('tinymce.plugins.quote', {
init : function(ed, url) {
ed.addButton('quote', {
title : 'Add a Quote',
image : url+'/image.png',
onclick : function() {
ed.selection.setContent('[quote]' + ed.selection.getContent() + '[/quote]');
}
});
},
createControl : function(n, cm) {
return null;
},
});
tinymce.PluginManager.add('quote', tinymce.plugins.quote);
})();
Vì vậy, một lần nữa, làm thế nào tôi có thể thêm nhiều nút mà không phải thực hiện tất cả mã này cho mỗi nút mới?
Cảm ơn :) Sebastian