1. 首页
  2. Wordpress

纯代码WordPress免插件实现代码高亮显示

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

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

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

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.     }

这就是纯代码 WordPress 免插件实现代码高亮显示全部内容,教程相关的文件请在此页面右侧边栏点击下载。

文章源自:作者:boxdiary,如若转载,请注明出处:https://www.boxdiary.com/diary/1046.html

发表评论

登录后才能评论

联系我们

在线咨询:点击这里给我发消息