Wordpress - Sanitize AROUND短代码

时间:2017-07-18 11:56:03

标签: wordpress tinymce shortcode

我有一个Wordpress plugin,允许用户标记项目符号列表,然后在其周围添加一个短代码。不幸的是,当用户选择项目符号列表时,未选择第一个UL,因此它们最终会出现奇怪的选择。结束代码应为:

[checklist-box title="Hello"]
<ul>
    <li>xxxx</li>
    <li>yyyy</li>
    <li>zzz</li>
</ul>
[/checklist-box]

但最终结果如下:

<ul>
    <li>[checklist-box title="Hello"]
<ul>
    <li>xxxx</li>
    <li>yyyy</li>
    <li>zzz</li>
</ul>
[/checklist-box]</li>
</ul>

看起来很可怕。

澄清:我需要[checklist-box]短代码来包装整个列表,包括

这是在TinyMCE中包装子弹的代码:

onsubmit: function(e) {
      var selected_text = editor.selection.getContent();
      shortcode = '[checklist-box title="' + e.data.title + '"]' + selected_text + '[/checklist-box]';
      editor.execCommand('mceInsertContent', 0, shortcode);
}

1 个答案:

答案 0 :(得分:1)

你可以尝试这段代码, 用

替换你的onsubmit代码
hold = 370

然后让我知道结果。