不管是Google还是百度搜索dedecms代码高亮,千篇一律的方法,并且都是转载的,基本一模一样,有很笨的方法,将模版文件templets/default/article_article.htm中加入所有js的的(有人用这种方法,网站加载十几个js、css,能不慢吗?),也有优化方案只用加载3个js或css,下面的方法是用优化后的方法。但是,代码高亮后,如果利用dedecms文档关键词给文章自己加关键词链接(这样做对SEO有帮助),高亮后的代码中如果有关键词链接,SyntaxHighlighter直接显示源码(a href='$key_url' target='_blank'u$key/u/a),下面我们来一步步实现这些功能
1.首先去SyntaxHighlighter官方网站下载 http://alexgorbatchev.com/SyntaxHighlighter/download/,建议下载2.1版本,貌似大家都说3.0版本的不支持自动换行,这里使用的是2.1.382版本。将下载的文件解压在syntaxHighlight文件夹里,去除里面无用的文件,只留下scripts和styles文件夹。
2. 新建dialogs文件夹,在里面新建一个名为syntaxhighlight.js的文件,因代码量过大,不宜贴出,请直接下载syntaxhighlight.js后者下载我做好的压缩包 http://www.linuxeye.com/include/ckeditor/plugins/syntaxhighlight/dialogs/syntaxhighlight.js
3. 然后新建images文件夹,存放一个syntaxhighlight.gif图片文件,该图片文件在编辑器工具栏上显示,可以使用16*16像素的图片 http://www.linuxeye.com/include/ckeditor/plugins/syntaxhighlight/images/syntaxhighlight.gif
4. 新建lang文件夹,是语言包,里面有两个文件,一个是中文cn.js一个是英文en.js cn.js代码如下:
en.js代码如下:
5. 新建plugin.js文件,该文件是ckeditor插件必须得文件,里面是对该插件的一些配置,代码如下:
6. 新建code.js文件,该文件是防止加载多个css、js http://www.linuxeye.com/include/ckeditor/plugins/syntaxhighlight/code.js
7. 由于dedecms 5.7自己集成了一个dedepage插件,用来添加ckeditor自定义插件,在include/ckeditor/plugins/dedepage文件夹下,打开plugin.js文件大概在28行(requires : [ 'fakeobjects' ],):requires : [ 'syntaxhighlight' ],其中syntaxhighlight为代码高亮插件的文件夹名,添加完之后的代码如下:
8. 修改include/ckeditor/ckeditor.inc.php文件,在$toolbar['Basic']的最后一行添加元素Code,修改后代码如下:
9. 到这一步,编辑器的修改已经完成,修改后的syntaxhighlight文件夹文件目录结构如下:
将syntaxhighlight文件夹上传到include/ckeditor/plugins/文件夹下,打开后台,添加文章试一下,看看编辑器的上最后一行是否出现了如图所示的按钮: 点击按钮弹出如下图所示的对话框输入代码,并且可以切换到高级选项对代码高亮显示做一些配置:
我修改后下载地址:http://pan.baidu.com/share/link?shareid=828332144uk=2586215667


闽公网安备 35020602001684号