[WordPress] 在wordpress中的fckeditor使用wp-syntax插件
转载本站文章请注明,转载自:扶凯[http://www.php-oa.com]
本文链接: http://www.php-oa.com/2009/09/03/ckeditor-wordpress-wp-syntax.html
Fckeditor是我用过的最好的所见即所得编辑器,就象offcie的软件一样.在Wordpress中也有这么一个插件,可以用他来替换默认的编辑器.
因为我常常写些小东西,如shell和perl的一些程序.所以还找了一个相当不错的语法高亮插件wp-syntax,基本支持所有常见的语言.
但使用的过程中,发现了二个问题.
1.当使用Fckeditor编辑器在次编辑时,会替换默认wp-syntax中的内容.所以害我改变过的文章内容中的代码实在没法读.
2.加入wp-syntax的时候,使用时.一定要转到源码模式,然后加上<per lang=’**’>的标签,在转换回来.实在是不方便.因为这样每次插入代码的时候,都需要手动输入一些预设置的格式,如果能够在编辑器框里增加一个按钮,自动输入这些重复的内容,就方便多了.
好了,后来google到网上有个不错的解决方法,他我用那个patch一真搞不定,没法子,只能手动修改.
原文链接"http://mjxian.cn/wordpress/archives/fckeditor-for-wordpress-wp-syntax.html"
我们来多谢’梦见锡安‘这位网友.呵呵.
好了,下面我们来手动解决我们的问题
1.解决编辑器在次编辑时,会替换默认wp-syntax中的内容这个问题.
编辑/www/wp-content/plugins/wp-syntax/wp-syntax.php这个文件 找到
global $wp_syntax_token, $wp_syntax_matches;
这行,在下面加入如下内容
$match = str_replace("&", "&", $match);
$match = str_replace("<", "<", $match);
$match = str_replace(">", ">" ,$match);
$match = str_replace(""","\"", $match);
$match = str_replace(" "," ",$match);
2.在Fckeditor中加入wp-syntax的样式
编辑/www/wp-content/plugins/fckeditor-for-wordpress-plugin/fckeditor/fckstyles.xml 这个文件.
找到
<Style name="Superscript" element="sup" />
-->
然后在这二行下面加入你需要语法高亮的语言,只需要修改name=就行了.
<Style name="Shell" element="pre">
<Attribute name="lang" value="bash" />
<Attribute name="line" value="1" />
</Style>
<Style name="Html" element="pre">
<Attribute name="lang" value="html4strict" />
<Attribute name="line" value="1" />
</Style>
<Style name="Css" element="pre">
<Attribute name="lang" value="css" />
<Attribute name="line" value="1" />
如图:



















高手啊 写的真好
我遇到同样的问题,不过我的是codecolorer,正在尝试解决,实在不行就换到syntax
呵呵,syntax很好用
您好,可是目前 FCKEditor 已經改版為 CKEditor 了,所以你提供的這個方法已經不適用,有沒有更新版的用法呢?