不用插件实现WordPress代码高亮

  • 2010-10-07
  • 1,623
  • 14
  • 0

偶尔在日志中加入一些代码,感觉完全没必要安装代码高亮插件,万一某天不用插件了,页面可能会很乱。其实大部分插件都是在代码中强行加入一些标签,然后用CSS定义样式,通过查看页面源文件可以清楚地看到。
有一个叫“发芽网”的在线代码高亮转换网站:点此进入。通过在线程序同样是向代码中加入不同的标签,然后定义样式,如果感兴趣可以到发芽网试试,但每次转换都需打开网址操作略显麻烦,不是本篇介绍的重点。

今天推荐的是一款本地转换代码高亮显示的小工具:CodeRender,本程序是基于 dp.SyntaxHighlighter 写的代码语法着色的工具。支持的语言有:
java/xml/sql/jscript/css/cpp/c#/python/vb/perl/php/ruby/delphi。

可方便用于你的博客中粘贴代码,只要自定相应的样式 (highlight.css 的内容,.Text 支持自定义样式或在模板里加上语法样式),然后复制用这个工具生成的 HTML 代码就能让你的代码着高亮显示。 可以加入更多语种的支持,本程序就是在 dp.SyntaxHighlighter 的基础上扩展了对 Perl 语言的支持,网上可以找到相应语法的 JS 代码和 CSS。语言扩展支持通过在 shCore.js 和 highlight.css 加入相应代码即可。

程序界面:

101045_1280647826QDrx.jpg

操作很容易,Source Code 中贴上你要着色的代码,然后选择语种,点击 Render 按钮就会在 HTML Code 中生成相应的 HTML 代码,同时在 HTML Preview 中可以预览到效果。

简 要说明:Lang 下拉框可以选择所支持的语法,Options 右边的 Gutter、Controls、CollapseAll、FirstLine、Columns 是控制生成的额外的元素,逐一点试试就知道了。每个内容显示(输入)区都提供了 Copy/Paste/Clear 快捷操作链接,还有一个总的 Clear 按钮。

Copy生成 的HTML 代码,在日志编辑窗口切换到HTML源代码编辑模式,粘贴就可以了。

不过要想正确显示代码高亮还需在WordPress主题中加载样式文件“highlight.css”(在下载的压缩包中)

方法:

首先,把highlight.css上传到所使用主题目录中;

其次:打开header.php,查找:

  1. <link rel=“stylesheet” type=“text/css” href=“<?php bloginfo(‘template_directory’); ?>/style.css” />   

在后面添加:

  1. <link rel=“stylesheet” href=“<?php bloginfo(‘template_url’); ?>/highlight.css” />   

当然,你也可以复制highlight.css中的所有代码到你主题style.css中,以上步骤就免了!

如认为默认的样式不符合自己的要求,可以通过修改“highlight.css”中的样式改变代码高亮、边框、背景等颜色,更个性化。

但需要注意的是WordPress会自动把半角符号替换为全角,别人复制下来的函数代码标点是全角的,无法使用,切记!

解决办法:

打开并编辑 wp-includes/formatting.php 文件,找到以下代码:

  1. // static strings    
  2.  $curl = str_replace($static_characters$static_replacements$curl);    
  3. // regular expressions    
  4. $curl = preg_replace($dynamic_characters$dynamic_replacements$curl);   

将$curl 开头的两句代码注释掉(只需在两个$curl前加上// ,后面最好有一英文空格)如下:

  1. // static strings    
  2.  //$curl = str_replace($static_characters, $static_replacements, $curl);    
  3. // regular expressions    
  4. //$curl = preg_replace($dynamic_characters, $dynamic_replacements, $curl);   

效果展示:请看文章不用插件实现相关日志的两种方法

工具下载:http://www.blogjava.net/Files/Unmi/CodeRender(Unmi).rar

原文地址: http://zmingcx.com/do-not-realize-wordpress-code-highlight-plugin.html | 知更鸟

评论

  • 七七回复

    嗯,这个很实用,学习了!

  • 七七回复

    嗯,这个不错,得支持下!

    • 洋葱回复

      奇怪,你的评论居然在垃圾评论里,又把你拉出来了

  • 小杰回复

    这个还没试过~~回来测试一下~

    • 洋葱回复

      恩恩~~有空多折腾下博客 😊

  • andy回复

    不知道你是用什么写博客的,如果用WLW那里面有插件,支持多种代码高亮,很方便的,而且添加本地图片在博客里面,加上水印之类的都很方便的。

    • 洋葱回复

      我直接在后台写的 😒 WLW是什么?告诉我全名嘛

      • andy回复

        windowns live writter微软的产品,最近刚推出2011正式版。。。很好用的。

  • 大头回复

    楼上正解,以前我也一直在后台写的,很不方便!WLW方便多了,而且格式也更美观

    • 洋葱回复

      看来我也要装一个去了 ❗

  • 西门回复

    这个我收藏了,回家试试效果怎么样。

    • 洋葱回复

      😎 西门收藏洋葱的日志,好荣幸挖~~

    • ynono回复

      呵呵~~都是转载的

发表评论