这样做没有合乎道德的方式。但还是有办法做到这一点。WordPress编写wpLink脚本时,请记住编辑器在那里,但当编辑器不在那里时,WordPress仍会处理该脚本(Good Thing)
考虑这个例子,并假设我们在页脚的前端使用它。
首先将基本样式和脚本排队。
function enqueue_scripts_209490() {
wp_enqueue_script(\'wplink\');
wp_enqueue_style( \'editor-buttons\' );
}
add_action(\'wp_enqueue_scripts\', \'enqueue_scripts_209490\');
现在在页脚中钩住此函数
Read the inline commentsfunction display_wplink_html_209490() {
//Our textarea, click to open the link edior and insert the link in same editor
echo \'<textarea id="example_209490"></textarea>\';
// Require the core editor class so we can call wp_link_dialog function to print the HTML.
// Luckly it is public static method ;)
require_once ABSPATH . "wp-includes/class-wp-editor.php";
_WP_Editors::wp_link_dialog(); ?>
<script type="text/javascript">
/* We need ajaxurl to send ajax to retrive links */
var ajaxurl = "<?php echo admin_url( \'admin-ajax.php\'); ?>";
jQuery(document).ready(function (){
jQuery(\'#example_209490\').click(function (){
wpLink.open(\'example_209490\'); /* Bind to open link editor! */
});
})
</script><?php
}
add_action(\'wp_footer\', \'display_wplink_html_209490\');
Note: 当用户由于js错误而未登录时,它将不起作用
setUserSetting
未定义,并且在用户未登录时没有AJAX响应。