我在插件中添加了一个TinyMCE按钮。到目前为止,我已经能够添加按钮并调用我的editor\\u插件。js文件及其命令。顺便说一句,这不是一个容易的任务。。。
我希望此按钮显示一个对话框,为用户提供多个选项。这些是我需要填写的下拉框和一些用户只需编写输入的文本框。其中一些需要来自WordPress函数的信息,而另一些只是静态信息。
接受此对话框后,我希望它在帖子上写下快捷码,以便我的插件显示在框中选择的选项。
问题是,我想在php文件中使用WordPress的一些函数。但这有点“断章取义”。我不能使用WordPress函数,甚至__()
i18n的功能。
下面是我在TinyMCE示例中使用的代码:
ed.addCommand(\'mceExample\', function() {
ed.windowManager.open({
file : url + \'/box.php\',
width : 500 + ed.getLang(\'example.delta_width\', 0),
height : 300 + ed.getLang(\'example.delta_height\', 0),
inline : 1
}, {
plugin_url : url, // Plugin absolute URL
some_custom_arg : \'custom arg\' // Custom argument
});
});
我也错过了写这篇文章的方式。正如您在这里所看到的,此代码不使用任何内容写入帖子。我尝试使用在另一个示例中找到的代码:
ed.execCommand(\'mceInsertContent\', false, \'Hello World\');
但我还没有发现如何在我的新脚本中使用它。
很抱歉,如果之前已经回答了这个问题,但是所有关于TinyMCE seams的文档都很混乱,我很难将其集成到我的插件中。提前谢谢。
SO网友:ungestaltbar
而不是要求管理员。php您可以使用WP内置的ajax功能,即使在这种情况下它不是ajax。
Add a hook
add_action(\'wp_ajax_my_plugin_function\', \'my_plugin_function_callback\');
Create your output function (callback)
function my_plugin_function_callback() {
// do stuff
}
Call it this way
而不是:
file : url + \'/box.php\',
您应该能够使用全局ajaxurl:
file: ajaxurl + \'?action=my_plugin_function&optional=data ...
出于安全原因,可能会添加一个nonce,但这取决于您:)