WordPress免插件实现代码高亮

 墨情博客  2019-04-14 21:39  283次阅读   评论 0 条

wordpress 技术博客经常会分享一些代码,但是 WordPress 本身代码高亮功用并不好。前面里维斯社分享了 2019 年 10 个最新的WordPress 代码高亮插件,今天就分享一个免插件完成代码高亮显现的办法。

Prismjs 就能够让我们的 wordpress 不用装插件就完成代码高亮的功用,Prismjs 是一个特地做代码高亮的开源项目,他的代码特性是精约、轻盈、快捷、高效、快速,而且支持 127 种程序言语的代码高亮。最主要的是 Prismjs 只需一个 JS 文件和一个 CSS 文件。运用 Prismjs 来完成代码高亮的时分,只需下载该文件放到网站,然后将这两个文件引进到页面上就能够了。下面介绍 WordPress 实现代码高亮的办法:

1、首先下载 prism 压缩包上传至主题根目录;

文件信息:
文件名称:prism js
分类目录:网站建设
更新时间:2019-04-12
下载地址:百度网盘

2、然后复制以下代码添加到主题 function.php 文件下方即可。

  1. //Wordpress免插件实现代码高亮  
  2. //Prism.js开始  
  3.  function add_prism() {  
  4.         wp_register_style(  
  5.             'prismCSS',  
  6.             get_stylesheet_directory_uri() . '/prism/prism.css' //自定义路径  
  7.          );  
  8.           wp_register_script(  
  9.             'prismJS',  
  10.             get_stylesheet_directory_uri() . '/prism/prism.js' //自定义路径  
  11.          );  
  12.         wp_enqueue_style('prismCSS');  
  13.         wp_enqueue_script('prismJS');  
  14.     }  
  15. add_action('wp_enqueue_scripts', 'add_prism');  
  16. //Prism.js结束  
  17. //编辑器添加快捷键  
  18. function appthemes_add_quicktags() {  
  19. ?>  
  20. <script type="text/javascript">  
  21. QTags.addButton( 'codeHighlight', '代码高亮', '\n【pre class="line-numbers"】【code class="language-markup"】\n HTML代码\n【/code】【/pre】\n' );  
  22. QTags.addButton( 'php', 'php', '\n【pre class="line-numbers"】【code class="language-php"】\n PHP代码\n【/code】【/pre】\n' );  
  23. QTags.addButton( 'python', 'Python', '\n【pre class="line-numbers"】【code class="language-python"】\n Python代码\n【/code】【/pre】\n' );//修改此段【】为<>  
  24. </script>  
  25. <?php  
  26. }  
  27. add_action('admin_print_footer_scripts', 'appthemes_add_quicktags' );  
  28. //添加快捷键结束  
  29. //Pre标签内的HTML不转义  
  30. add_filter( 'the_content', 'pre_content_filter', 0 );  
  31. function pre_content_filter( $content ) {  
  32.     return preg_replace_callback( '|【pre.*】【code.*】(.*)【/code】【/pre】|isU' , 'convert_pre_entities', $content );  
  33. }//修改此段【】为<>  
  34. function convert_pre_entities( $matches ) {  
  35.     return str_replace$matches[1], htmlentities( $matches[1] ), $matches[0] );  
  36. }  
本文地址:https://www.13qing.com/55.html
关注我们:关注请扫描底部右下角二维码,公众号:nygzs166
温馨提示:文章内容系作者个人观点,不代表墨情博客对观点赞同或支持。
版权声明:本文为原创文章,版权归 墨情博客 所有,欢迎分享本文,转载请保留出处!

 发表评论


表情