这类事情最容易通过插件从TinyMCE编辑器中完成。有关使用WordPress过滤器创建过滤器的详细信息,请参见:
http://codex.wordpress.org/TinyMCE_Custom_Buttons
function myplugin_addbuttons() {
// Don\'t bother doing this stuff if the current user lacks permissions
if ( ! current_user_can(\'edit_posts\') && ! current_user_can(\'edit_pages\') )
return;
// Add only in Rich Editor mode
if ( get_user_option(\'rich_editing\') == \'true\') {
add_filter("mce_external_plugins", "add_myplugin_tinymce_plugin");
add_filter(\'mce_buttons\', \'register_myplugin_button\');
}
}
function register_myplugin_button($buttons) {
array_push($buttons, "separator", "myplugin");
return $buttons;
}
// Load the TinyMCE plugin : editor_plugin.js (wp2.5)
function add_myplugin_tinymce_plugin($plugin_array) {
$plugin_array[\'myplugin\'] = URLPATH.\'tinymce/editor_plugin.js\';
return $plugin_array;
}
// init process for button control
add_action(\'init\', \'myplugin_addbuttons\');
有关如何编写所需的editor\\u插件的文档。可以在TinyMCE网站上找到用于执行所需插入的js文件:
http://www.tinymce.com/wiki.php/TinyMCE3x:Creating_a_plugin
http://www.tinymce.com/wiki.php/API3:tinymce.api.3.x
http://www.tinymce.com/wiki.php/TinyMCE3x:TinyMCE_3.x
如果您确实必须通过单击元框中的按钮来执行插入,那么仔细检查Zemanta插件代码可能会有所帮助。如果你想得到一些帮助,请在这个答案上添加一个插件链接。