这是我的问题:我有一些不同的文本区域(不是Wordpress经典编辑器,但许多所见即所得的编辑器从Visual Composer插件)。我的主题包括一些简短的代码。但是当我想在特定文本区域插入短代码时,短代码每次都会出现在经典编辑器中。所以我会尝试在代码中说"将代码放入我想要插入短代码的文本框中,而不是在传统的出版商中"。这里我的代码,我认为解决方案可以是:
addWithPopup: function(ed, title, id) {
ed.add({
title: title,
onclick: function() {
tinyMCE.activeEditor.execCommand('FreshShortcodesPopup', false, {
title: title,
identifier: id
});
}
});
},
希望你能帮助我…的问候。数学。
不要用tinyMCE.activeEditor
来称呼编辑器。除非用户显式单击另一个编辑器,否则tinyMCE.activeEditor
不会更改。另一个陷阱是,除非点击编辑器,否则tinyMCE.activeEditor
不会初始化。最好使用编辑器实例的id:
tinymce.get('your_editor_id').execCommand(...
更新:
onclick: function(ed) {
console.log('ed:',ed);
ed.execCommand('FreshShortcodesPopup', false, {
title: title,
identifier: id
});
}