WordPress 文章插入代码被转义
在 WordPress 文章中插入代码会遇到这种情况,比如将‘–’转义为‘-’破折号,将 title 中的“-”转义为“–”等。网络上也称“转换全半角标点符号”或者“代码转义”。当你在 WordPress 编辑器地文本编辑器写好代码,切换到可视化编辑器后,再回到文本编辑器,所有的代码都乱套了,很多被“过滤”掉了。
这个罪魁祸首是 wptexturize() 函数,我们可以在主题模板地 function.php 文件中把它取消掉。
取消 wptexturize() 函数:
// 取消转义函数
add_filter('run_wptexturize', '__return_false');
WordPress 文章插入代码被执行
不管是 WordPress 使用了何种代码高亮插件,都难免会出现文章中插入的代码被解析执行地情况。我们在文章中插入代码是用来学习交流地,不是修改网页的,有时候网页会因为插入的代码被解析导致网页错乱,遇到了心态会爆炸。
其实,WordPress 自身有一个强大的 HTML 标签过滤系统,会导致在文章和评论中插入的 PHP、CSS、HTML、JS 等代码直接消失,因此需要将 WordPress 的自动过滤 HTML 标签的功能禁用。
解决方法
/**
* 禁用自动过滤 HTML 标签
* https://www.24mh.cn/post/603.html
*/
remove_action('init', 'kses_init');
remove_action('set_current_user', 'kses_init');
将以上代码插入主题的 functions.php 文件中即可。
欢迎打赏
