wordpress博客内容代码/字符自动转义问题

2018年6月7日12:56:20 发表评论

阿里云服务器

wordpress文章内容分享代码时,在前台查看时文章页代码显示不了或变空白。代码本来是正确的,但当网友复制你的代码添加到主题时出现错误。又比如你分享的图片链接地址是

<img alt='wordpress博客' src='http://www.lmlblog.com/wp-content/uploads/2018/11/jzcs.jpg'/>

,但在前台显示的不是上面的链接代码,而是直接显示一张图片等等。

这主要是wordpress网站内容已自动字符转义。如代码标点符号本来是英文的,发布后转成中文标点符号(半角引号会变全角,)。当别人复制你分享的代码时就错误或无法添加了。那么如何解决WordPress文章自动转义字符问题呢。

解决WordPress中字符转义问题网上的方法很多,这里介绍一种,在你主题的functions.php文件中添加以下代码,保存即可。

/** 强制阻止WordPress代码转义
*http://www.lmlblog.com/431.html
*/
function git_esc_html($content) {
    $regex = '/(<pre\s+[^>]*?class\s*?=\s*?[",\'].*?prettyprint.*?[",\'].*?>)(.*?)(<\/pre>)/sim';
    return preg_replace_callback($regex, 'git_esc_callback', $content);
}
function git_esc_callback($matches) {
    $tag_open = $matches[1];
    $content = $matches[2];
    $tag_close = $matches[3];
    $content = esc_html($content);
    return $tag_open . $content . $tag_close;
}
add_filter('the_content', 'git_esc_html', 2);
add_filter('comment_text', 'git_esc_html', 2);
add_filter('asgarosforum_filter_post_content', 'git_esc_html', 2);
maolai

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: