短代码用 p 标签包裹
我想在 WordPress 编辑器(v 3.3+)中插入一些短代码
该字符串看起来
[a_col]<p>some text or other stuff</p>[/a_col]
很好,但是如果我在 JS 中使用这一行,
tinyMCE.get('content').setContent(string);
我的短代码会被 p 标签包围,看起来
<p>[a_col]</p><p>some text or other stuff</p><p>[/a_col]</p>
我真的不喜欢接触原生功能。也许有不同的解决方案来插入内容
I would like to insert some shortcodes in the wordpress editor (v 3.3+)
The string looks like
[a_col]<p>some text or other stuff</p>[/a_col]
which is fine but if i use this line in JS
tinyMCE.get('content').setContent(string);
my shortcodes get surrounded by p tags which looks like
<p>[a_col]</p><p>some text or other stuff</p><p>[/a_col]</p>
I really don't like to touch native functions. Maybe there is a different solution to insert content
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
这是我的解决方案:
短代码函数返回
这会删除所有不需要的 p 标签
Here is my solution:
the shortcode function returns
this removes all unwanted p tags
如果您要在“the_content”上添加过滤器,您可能可以解析
标签:
http://codex.wordpress .org/Function_Reference/add_filter
If you were to add_filter on 'the_content', you could probably parse the
tags out:
http://codex.wordpress.org/Function_Reference/add_filter
当在“编辑器”中从tinymce模式切换到HTML模式时。这样它就不会转换文本字段中的内容。
When in the "editor" switch to HTML mode from tinymce mode. That way it's not converting what you have in the textfield.
此问题已在 Wordpress 版本 2.5.1 中修复,请参阅简码 API 了解更多详细信息
This issue was fixed in Wordpress version 2.5.1 see the shortcode API for further details
http://codex.wordpress.org/Function_Reference/remove_filter
http://codex.wordpress.org/Function_Reference/remove_filter