现在还在用网站程序自己建立独立博客网站写博客的人,基本上大部分都是技能相关的人员了,而我们在写技能博客的时分往往会希望在文章里将代码贴出来。但是wordpress默认的编辑器的刺进代码的功能并不友爱,由于在文章页不能很好的将代码高亮显现,看着自己的技能文章里的代码案例和其他一般文字一样显现,真是难受死了。
Prismjs就可以让我们的wordpress不用装插件就完成代码高亮的功能,Prismjs是一个开源的专门做代码高亮的项目,他的代码特点是精约、轻盈、快捷、高效、快速,而且他支持127种程序语言的代码高亮,最主要的是Prismjs只需一个JS文件和一个CSS文件。使用Prismjs来完成代码高亮的时分,只需下载这两个文件到自己的网站,然后将这两个文件引进到页面上就可以了。
下面介绍下wordpress完成代码高亮的办法。
首先到下面下载prism压缩包上传至主题根目录,然后复制以下代码添加到主题function.php文件下方即可!
- //Wordpress免插件实现代码高亮
- //Prism.js开始
- function add_prism() {
- wp_register_style(
- 'prismCSS',
- get_stylesheet_directory_uri() . '/prism/prism.css' //自定义路径
- );
- wp_register_script(
- 'prismJS',
- get_stylesheet_directory_uri() . '/prism/prism.js' //自定义路径
- );
- wp_enqueue_style('prismCSS');
- wp_enqueue_script('prismJS');
- }
- add_action('wp_enqueue_scripts', 'add_prism');
- //Prism.js结束
- //编辑器添加快捷键
- function appthemes_add_quicktags() {
- ?>
- <script type="text/javascript">
- QTags.addButton( 'codeHighlight', '代码高亮', '\n【pre class="line-numbers"】【code class="language-markup"】\n HTML代码\n【/code】【/pre】\n' );
- QTags.addButton( 'php', 'php', '\n【pre class="line-numbers"】【code class="language-php"】\n PHP代码\n【/code】【/pre】\n' );
- QTags.addButton( 'python', 'Python', '\n【pre class="line-numbers"】【code class="language-python"】\n Python代码\n【/code】【/pre】\n' );//修改此段【】为<>
- </script>
- <?php
- }
- add_action('admin_print_footer_scripts', 'appthemes_add_quicktags' );
- //添加快捷键结束
- //Pre标签内的HTML不转义
- add_filter( 'the_content', 'pre_content_filter', 0 );
- function pre_content_filter( $content ) {
- return preg_replace_callback( '|【pre.*】【code.*】(.*)【/code】【/pre】|isU' , 'convert_pre_entities', $content );
- }//修改此段【】为<>
- function convert_pre_entities( $matches ) {
- return str_replace( $matches[1], htmlentities( $matches[1] ), $matches[0] );
- }
- //END
- //END