wordpress二次开发:取消wordpress正文中英文字符自动转换(字符转义)

2015-03-04 13:57 阅读 134 次 评论关闭

通过wordpress写文章,如果文章中有代码,恰巧你没有代码高亮插件的话(有些代码高亮一样会字符转义),那么在文章发表后,你的英文半角符号会自动转化成全角符号。这会导致你贴的代码别人复制之后没法用,而且会导致别人的博客报错。如果少的话自己修改一下,如果多的话,那就麻烦了。

如果你不会修改代码或者嫌麻烦的话推荐直接使用插件:Quotmarks Replacer 插件

如果不使用插件,就复制以下代码到你当前使用主题的functions.php 文件中(放在最后一个?>结束前)!

  1. $qmr_work_tags = array(
  2.   'the_title',             // 标题
  3.   'the_content',           // 内容 *
  4.   'the_excerpt',           // 摘要 *
  5.   'single_post_title',     // 单篇文章标题
  6.   'comment_author',        // 评论作者
  7.   'comment_text',          // 评论内容 *
  8.   'link_description',      // 友链描述(已弃用,但还很常用)
  9.   'bloginfo',              // 博客信息
  10.   'wp_title',              // 网站标题
  11.   'term_description',      // 项目描述
  12.   'category_description',  // 分类描述
  13.   'widget_title',          // 小工具标题
  14.   'widget_text'            // 小工具文本
  15.   );
  16. foreach ( $qmr_work_tags as $qmr_work_tag ) {
  17.   remove_filter ($qmr_work_tag, 'wptexturize');
  18. }

其实笔者认为,东西太全面了也不好,你可以直接挑选其中几个模块去除字符转义就可以了,比如只去除文章正文的字符转义,你就可以复制下面的代码到当前使用主题的functions.php 文件中。

  1. //取消正文内容转义 
  2. remove_filter('the_content', 'wptexturize');
  3. //取消摘要摘要转义
  4. remove_filter('the_excerpt', 'wptexturize');
  5. //取消评论转义 
  6. remove_filter('comment_text', 'wptexturize');

这两段代码最好不要同时使用,会出现报错现象!

版权声明:本文著作权归原作者所有,欢迎分享本文,谢谢支持!
转载请注明:wordpress二次开发:取消wordpress正文中英文字符自动转换(字符转义) | 猎微网

评论已关闭!