现在的位置: 首页 > Wordpress > WP技巧 > 正文
非高亮插件实现wordpress文章显示代码
2010年07月21日 WP技巧 ⁄ 共 1536字 评论数 34 ⁄ 被围观 7,408+

作为个人博尤其是wordpress建站的,很多时候都会遇到要演示代码什么的,直接输入显然不行,而一般的代码高亮插件也应运而生。像我之前介绍的一款插件WordPress插件:SyntaxHighlighter实现代码高亮就非常的好用,而且简单。不过最近在折腾w3c标准,而插件的应用似乎有些不合标准,所以想暂停此插件,利用其它方法来实现。

考虑到WordPress会自动转换半角符号为全角符号,因为中文中使用的都是全角符号。全角符号会导致一个不小的问题, 就是在文章中复制下来的代码不能直接使用,所有的代码都是使用半角符号。例如全角的双引号替换掉半角的引号在代码中会出错, 而且修改起来非常麻烦。所以我们需要关闭WordPress自带的这个转换器来让WordPress正常的显示我们所输入的所有代码,也就是关闭WordPress自带的文章符号过滤器。

方法非常简单,打开主题的functions.php文件,添加下面的代码:

<?php remove_filter('the_content', 'wptexturize'); ?>

上面的代码可以让文章内容过滤器失效,达到显示代码的目的。如果还想要在其他地方显示正常的代码,例如标题、摘要、评论、文章标题、博客信息、描述、小工具的文本等等,可以按照自己的要求去除相应的过滤器, 可用下面的代码来达到我们的目的:

$qmr_work_tags = array(
'the_title',
'the_content',
'the_excerpt',
'comment_text',
'list_cats',
'single_post_title',
'comment_author',
'term_name',
'link_name',
'link_description',
'link_notes',
'bloginfo',
'wp_title',
'widget_title',
'term_description',
'category_description',
'widget_text'
);

foreach ( $qmr_work_tags as $qmr_work_tag ) {
remove_filter ($qmr_work_tag, 'wptexturize');
}

需要注意的是这种方式只能在可视化编辑模式下,而非html模式下。对于像我这种代码用的不是特别多的人来说,显然不用插件更方便些。当然,如果代码较多,而且注重颜色等效果,还是用插件要好些。

其实这种方式也可以给代码做些效果,只是css水平不够,只好作罢,有机会再来折腾了。

另外一种方法,已经有不少童鞋在用了,就是借助第三方网站:发芽网,正如万戈童鞋就是用的此方法。此方法的好处便是仍然可以保证代码的高亮,便于阅读与理解。而且此网站的优点也不少:

1、无需插件支持 blog 代码高亮。只需要复制粘贴即可轻松使用,且支持120多种编程语方和30多个流行的高亮主题,高亮代码在RSS中依然有效。

2、稳定支持各种blog、论坛、邮箱。包括 WordPress、Z-Blog、Bo-Blog、BlogBus、百度空间、JavaEye、Discuz!论坛、phpBB、QQ 空间、网易邮箱、Gmai l等等等等。

3、代码收集与共享。支持代码版本管理,并有评论、收藏等功能。

使用方法也非常简单,直接去发芽网的代码站:http://fayaa.com/code/,选择语言种类,输入代码即可实现高亮。例如上述的代码用发芽网来写的效果就是:

<?php remove_filter('the_content', 'wptexturize'); ?>

总之,非高亮插件实现代码显示的目的便是顺利通过w3c的xhtml验证,如果对此不感兴趣的童鞋自然也无需折腾了。



目前有 34 条留言 其中:访客:34 条, 博主:0 条

  1. 西门 : 2010年07月22日01:15:59  21楼

    我直觉得这样搞太麻烦了。。。要是能自动转换就好了。


    • 管理员
      admin : 2010年07月22日08:01:43  地下1层

      我也觉得 所以现在又考虑还是用插件了

      • 阿七 : 2010年07月25日14:34:12  地下2层

        一直在用插件。

  2. 园子 : 2010年07月22日09:23:06  22楼

    不用插件的我喜欢 可以省个插件了。

  3. yesureadmin : 2010年07月22日09:44:01  23楼

    这个比较好,至少让我知道了还有一个发牙网呵呵 :mrgreen: :mrgreen:

  4. 宁怡 : 2010年07月22日12:39:14  24楼

    你那个“而且此网站的优点也不少:”下面三个优点左边的那条竖杠是怎么实现的啊?


    • 管理员
      admin : 2010年07月22日13:06:34  地下1层

      那个是表示 引用
      竖线是引用样式 css里弄的


    • 管理员
      admin : 2010年07月22日13:09:03  地下1层

      blockquote { padding:0 5px 0 10px; margin:10px 0 10px 20px; border-left:3px solid #D7D7D7; }
      这个是我的参考

  5. lovee : 2010年07月22日18:51:49  25楼

    所见即所得编辑什么的最不美了><

  6. N : 2010年07月24日09:12:30  26楼

    再次见到发芽网 :roll: ,很适合临时简单的代码演示

  7. 自由人 : 2010年07月24日12:34:10  27楼

    😕 标题应该是非插件高亮。。。

  8. 老张博客 : 2010年07月28日10:53:15  28楼

    这个是必须的,不过我到现在还没有用呢。

  9. GS : 2010年08月22日11:39:37  29楼

    LZ 是否可以提供详细教程 wp新手


    • 管理员
      admin : 2010年08月22日16:25:42  地下1层

      我本身也是新手 自己也是不断学习中 等机会成熟 可以考虑分享一下自己的心得


如果觉得文章或者网站对您有帮助请点击 向TA付款 捐赠作者或者点击下面的分享按钮支持作者

更多

给我留言

留言无头像?

无觅相关文章插件,快速提升流量

×