WordPress中Python代码引号显示为下引号的修复方案求助
解决WordPress中代码块引号自动变下引号的问题
问题原因
WordPress自带的wptexturize函数会自动将普通直引号(")转换为排版用的弯引号(“”),你用<blockquote>替代代码标签存放Python代码时,代码里的字符串首引号被转成了下引号(“),不符合Python语法要求。
解决方案(无需Web字体,符合DSGVO)
方法1:全局禁用智能引号
在主题的functions.php文件末尾添加以下代码,彻底关闭WordPress的智能引号自动转换功能:
add_filter('run_wptexturize', '__return_false');
注意:此操作会影响全站内容,所有位置的直引号都不会再被转换为弯引号。
方法2:仅禁用blockquote内的智能引号
如果不想影响其他内容的排版,可添加自定义函数,只针对<blockquote>标签内的内容禁用智能引号:
function disable_wptexturize_in_blockquote($content) { // 匹配blockquote标签内的内容 $content = preg_replace_callback('/<blockquote>(.*?)<\/blockquote>/s', function($matches) { return '<blockquote>' . wp_specialchars_decode($matches[1], ENT_QUOTES) . '</blockquote>'; }, $content); return $content; } add_filter('the_content', 'disable_wptexturize_in_blockquote', 11);
将这段代码添加到主题的functions.php中即可,它会保留blockquote内的原始直引号,不影响其他内容的排版。
方法3:手动替换为HTML实体(适合少量内容)
编辑文章时,把代码里的双引号手动替换为HTML实体",WordPress就不会对其进行转换,发布后会显示为标准的直引号。
内容的提问来源于stack exchange,提问作者Der Achim
相关产品推荐
相关产品推荐

