wordpress ブログ運営

【AFFINGER 6】AFFINGER では Highlighting Code Block が使えない

シンタックス付きでコードを埋め込みたい

プログラマなら誰しもが思うだろうが,ブログにシンタックス付きでコードを埋め込みたいシーンが出てきた.

というわけで(当然そういう機能はあるだろうという前提の元)試みてみたのだが,どうやらプラグインを使わないとできないようだ.
調べてみると,「Highlighting Code Block」というプラグインが良さそうだということがわかり,早速導入してみた.

AFFINGER では Highlighting Code Block が使えない

しかし,クラシックエディターに該当のプルダウンメニューが出てこない.
おかしいと思って調べてみると,同様の症状で困っていた人が何人か出てきた(この方たちには後々の prism.js の導入の際もお世話になる).

そう,悪さをしていたのは AFFINGER .
有料で優良なテーマであるはずの AFFINGER が,われわれのコードからシンタックスを奪ったのである.

根本的な解決方法を探してみるが見つからず

上記の記事を含めてしばらく調べて見たのだが,根本解決する方法は未だ見つかっていない.

ワークアラウンド的な対処としては,以下の2つが考えられる.

  • prism.js を使う
  • コードを入力するときだけ一時的にブロックエディターを使う

どちらも正常に動作することを確認できたのでメモを取っておく.

prism.js を使う

上記参考サイトにもある通り,1つ目の方法としては「prism.js」を使う,という方法がある.

こちらが大変参考になるので,詳細はこちらを見てほしい.

ざっくりとした手順としては,

  1. prism.js の公式サイトから js と css を落としてくる
  2. ftp を使ってそれらのファイルを affinger-child のフォルダにアップロードする
  3. function.php 内に prism.js を使うためのコードを記述
  4. 所定のタグでコードを囲む

以上である.

prism.js を使ったコード埋め込みはこんな感じになる.

int main()
{
    return 0;
}

 

コードを入力するときだけ一時的にブロックエディターを使う

もう一つの解決方法として,コードを入力するときだけ一時的にブロックエディター(新エディター)を使うという方法もある.

というのも AFFINGER で Highlighting Code Block が使えないのはクラシックエディターを使っているときなので,一時的にブロックエディターを使ってしまえばよいのである.

ブロックエディターとクラシックエディターを記事執筆中に切り替えるには,

設定 > 投稿設定 > ユーザーにエディターの切り替えを許可 > はい

にしておく必要があると思われる.

そうすると,右のカラムから「ブロックエディターに切り替え」↔右上のメニューから「旧エディターに切り替え」で切り替えることができる.

Highlighting Code Block を使ったコード埋め込みはこんな感じになる.

個人的にはこちらの見た目のほうが好きなので(せっかく prism.js を導入したが)こちらを使うと思う.

int main()
{
    return 0;
}

以上,参考にされたし.

  • この記事を書いた人

GOTH

鹿児島県出身,吉祥寺在住の27歳.職業はゲーム会社でプログラマー.趣味はバイク,車,キャンプ,ガジェット,読書,そしてゲーム開発. サイトのテーマはプログラミングとガジェットでライフハック.たまに趣味に関する雑感や記録を残していく備忘録.ツイッターもやってます.
自己紹介
お問い合わせ

-wordpress, ブログ運営