wordpressのブログでソースコードを色付きで綺麗に表示させるには?
プラグインでサイトが重くなるのは避けたいならGoogle code-prettifyがおすすめって本当?
こんな疑問に答えます。
本記事の内容
wordpressブログ運営で2万PV/月を超える僕が解説していきます。
作業環境
WordPress 4.9.3
使用スタイル AFFINGER5(WING)
※記事内にプロモーションを含む場合があります
WordPressブログでソースコードを色付きで書いて表示させる方法【Google code-prettifyがおすすめ】
wordpressブログでソースコードを色付きで書いて表示させる場面って多いですよね。
方法はたくさんあるけれど、プラグインは実は重いものが多いです。
なので、Google code-prettifyがおすすめです。
実際に見せると、こんな感じ。
func decimalNumberByRaisingToPower(_ power: Int) -> NSDecimalNumber dNum = [dNum1 decimalNumberByRaisingToPower:2];
綺麗で見やすいですよね。
ブログのヘッダーにコードをコピペ
まず、こちらのページから下記にあるように、このコードをブログのヘッダーのscript欄にコピペします。
・</head>の直前に入れます。
・前提として、子テーマでヘッダーファイルをを編集できるようにしておいた方がいいです。
2022年の現在はコードが変わっているので注意
<script src="https://cdn.jsdelivr.net/gh/google/code-prettify@master/loader/run_prettify.js?lang=css&skin=sunburst"></script>
のように変わっているの注意です。
Desertもdesertなど大文字小文字の変更も注意です。
公式ページを参照推奨です。
Setup
Include the script tag below in your document:
<script src="https://cdn.rawgit.com/google/code-prettify/master/loader/run_prettify.js"></script>
https://github.com/google/code-prettifyより引用
Github「code-prettify」
https://github.com/google/code-prettify
Githubの解説ページの重要な部分
https://github.com/google/code-prettify/blob/master/docs/getting_started.md
最新の導入方法とポイントに関して、ここのサイト様を参考にしました。
Google code-prettifyの使い方(2017年6月現在)
http://raimon49.github.io/2017/06/24/usage-google-code-prettify.html
好みのデザインスキンに調整する
コードの見た目のデザインテーマを変えられます。
デザインサンプル
https://rawgit.com/google/code-prettify/master/styles/index.html
デザインを変える場合、ヘッダーに挿入するコードも次のように変わるので、注意が必要です。
Default
<script src="https://cdn.rawgit.com/google/code-prettify/master/loader/run_prettify.js?skin=Default"></script>
Desert
<script src="https://cdn.rawgit.com/google/code-prettify/master/loader/run_prettify.js?skin=Desert"></script>
Sunburst
<script src="https://cdn.rawgit.com/google/code-prettify/master/loader/run_prettify.js?skin=sunburst"></script>
Sons-Of-Obsidian
<script src="https://cdn.rawgit.com/google/code-prettify/master/loader/run_prettify.js?skin=Sons-Of-Obsidian"></script>
Doxy
<script src="https://cdn.rawgit.com/google/code-prettify/master/loader/run_prettify.js?skin=Doxy"></script>
実際に文章中で使用する時のタグ
導入設定後は、このタグで挟むだけで色付きコード化します。
コードを挟むタグ(行番号なし)
<pre class="prettyprint">...</pre>
もしくは
<code class="prettyprint">...</code>
コードを挟むタグ(行番号あり)
行番号を入れたい場合は、このタグで挟みます
<pre class="prettyprint linenums">...</pre>
行番号についての注意
(1)行番号も一緒にコピペされる
行番号を入れて表示させた場合、読者がコードをコピペする時に、行番号も一緒にコピペされます。
困りますね。
行番号なしも両方載せればいいんでしょうか。
(2)多くのデザインテーマは、5行目10行目しか表示されない
ほとんどのテーマで、行番号はシンプルに5、10、15行目に表示されるだけです。
1行目の「1」も表示されないので、注意が必要です。
これだけでは、上手くコード表示してくれない場合がある
(1)HTML形式のコードを使っている場合
HTMLのコードは、どうしてもHTMLと解釈されてしまうので、変換が必要らしいです。
こちらのツールを使って、HTMLの記述を特殊な形に変換すれば、上手くいきました。
(2)AFFINGERオリジナルのショートコードを使っている場合
AFFINGER5(WING)では、上記のタグで挟むだけでは、コード表示になってくれない場合が多いです。
この場合は、ショートコードを分断するように(消す)の文字を挟みました。
他に方法あったら知りたい。
おそらく、これは防ぎようがなくて、AFFINGER作者様のページでは、説明ページだけスクリプトで制限しているのかもしれません。
WordPressブログでソースコードを色付きで書いて表示させる他の方法【選ばなかった理由】
(1)Crayon Syntax Highlighter
例えばこのプラグインが有名ですね
Crayon Syntax Highlighter
でも、重いからやめました。
(2)Gist
Gistという方法もいいかも
めったにコードをブログに載せないなら、この方法もありかもしれないですね。
というわけで今回は以上です。
使い始めて1年経った今でも「code-prettify」は軽くていいと思います。
ただ、いちいちヘッダーのコードを変更しなければならない・デザインのカスタマイズは、面倒でデメリットだと思いました。