WordPress发布文章&被转义成&的解决方法

    选择打赏方式

WordPress官方不知道是为了防止注入还是什么,它会在各位站长后台发布文章后,自动将&给转义;但有时候我们的URL也会附带&,他变成了&这可怎么搞,这个问题实际上是 html 转义符的问题,导致打不开变成了死链或其他奇奇怪怪的问题产生。

目前来说除了修改 wordpress 核心程序外无解,因为这个问题是 wordpress 的源码导致的。

但经过一番发现,可以在主题下的function.php直接hook解决(添加禁止转义代码)

1.打开主题下的 function.php 文件,在文件的后面加上以下代码:

// 禁止转义符号
add_filter('the_content', function ($string) {
    return preg_replace_callback('|<a\b([^>]*)>(.*?)</a>|', function ($matches) {
        return '<a' . str_replace('&', '&', $matches[1]) . '>' . $matches[2] . '</a>';
    }, $string);
}, 10, 1);
2.加入代码以后保存。

3.回到文章页面,Ctrl+U查看网页源码,就能看见文章中的”&”已经没有被转义了。

版权声明:若无特殊注明,本文为《傲世》原创,转载请保留文章出处。
本文链接:https://www.recho.cn/218.html
正文到此结束

热门推荐

发表吐槽

匿名评论 请叫我雷锋~

你还可以输入 250 / 250 个字

呵呵 哈哈 吐舌 开心 笑眼 可怜 乖 啊 你懂得 不高兴 生气 汗 黑线 哭 真棒 阴险 鄙视 酷 滑稽 纳尼 疑问 委屈 惊讶 勉强

评论信息框
可使用QQ号实时获取头像自动填写

私密评论

吃奶的力气提交吐槽中...

已有2条吐槽

匿名

2022-11-01 22:26 美国加利福尼亚州洛杉矶Dedipath数据中心
请问hexo的如何解决
  Windows 10 x64    Google Chrome 106.0.0.0

小傲世

2022-11-12 22:51 广东省深圳市移动
@匿名:你好,我不是很了解hexo系统,我看了一下,你可以试试去官方Github库上提issue试试看!https://github.com/hexojs/hexo/issues
  Windows 10 x64    Google Chrome 109.0.0.0