前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >彻底解决WordPress 中 半角全角字符转义 的问题

彻底解决WordPress 中 半角全角字符转义 的问题

作者头像
Jeff
发布2018-01-19 10:56:38
2.3K0
发布2018-01-19 10:56:38
举报
文章被收录于专栏:DeveWorkDeveWork

WordPress中会默认会自动转义一些字符,如将‘--’转义为‘-’破折号,网络上也称“转换全半角标点符号”或者“代码转义”。因为Wordpress 会智能地将源代码中的所有半角符号自动修正为全角符号,以防止外部源代码在网页上执行。这个功能所带来的麻烦就是在输入代码后,显示的不是原始代码,被人复制粘贴使用就会有问题。如果你的WordPress博客经常要分享代码的话,就需要彻底解决WordPress 中 半角全角字符转义 的问题。

结合Jeff的使用经验,结合网络上相关代码,以下给出终极攻略:

移除wptexturize()函数

WordPress作怪的函数就是wptexturize(),点这里查看WordPress官方说明。既然如此,那就移除它。将下面的代码加入主题的funtions.php文件的最后一个 ?> 中:

//取消内容转义 remove_filter('the_content', 'wptexturize'); //取消摘要转义 remove_filter('the_excerpt', 'wptexturize'); //取消评论转义 remove_filter('comment_text', 'wptexturize');

删除WordPress程序文件中相关代码

修改 wp-includes/formatting.php 文件,把实现自动替换的相关语句注释掉。找到:

// static strings $curl = str_replace($static_characters, $static_replacements, $curl); // regular expressions $curl = preg_replace($dynamic_characters, $dynamic_replacements, $curl);

将$curl 开头的两句代码注释掉,即改为:

// static strings //$curl = str_replace($static_characters, $static_replacements, $curl); // regular expressions //$curl = preg_replace($dynamic_characters, $dynamic_replacements, $curl);

这个方法可选,因为每次升级WordPress 程序后,都需手动修改一下文件。也可以安装 Quotmarks Replacer 插件实现同样的效果。

更改编辑器默认视图为HTML/文本

WordPress默认的是,在后台新建文章后,编辑器就自动跳转到“可视化”视图。如果我们更改编辑器默认视图为HTML/文本,就不会因为要切换模式而导致代码转义了。

将以下代码添加到主题的functions.php文件里即可实现:

add_filter('wp_default_editor', create_function('', 'return "html";'));

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2013/03/30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 移除wptexturize()函数
  • 删除WordPress程序文件中相关代码
  • 更改编辑器默认视图为HTML/文本
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档