Google Code Prettifyを使用してソースコードを表示をしてくれる「Prettify Code Syntax」

n__1117

Prettify Code Syntaxは、WordPressでGoogle Code Prettifyを使用してソースコードを表示してくれるプラグインです。
プラグインダウンロード
Google Code Prettifyのページ

使用方法

インストールして、投稿内でコードを以下のように囲めば表示してくれます。

<pre class="prettyprint lang-php">
<?php echo "Hello World"; ?>
</pre>
<?php echo "Hello World"; ?>

テーマ

管理画面の「設定」→「Prettify Code Syntax」のStyleタブであらかじめ用意されたテーマを選択するかcustomの項でCSSを直書きしてスタイリングすることができます。

折り返し

はみでる場合に横スクロールバーを表示するのではなく折り返すようにするには、以下をstyle.cssに追加して下さい。

.entry-content pre.prettyprint,
.comment-content pre.prettyprint {
  white-space: pre-wrap;                 /* css-3 */
  white-space: -moz-pre-wrap !important; /* Mozilla, since 1999 */
  white-space: -pre-wrap;                /* Opera 4-6 */
  white-space: -o-pre-wrap;              /* Opera 7 */
  word-wrap: break-word;                 /* Internet Explorer 5.5+ */
}

参考:Wrapping Text Inside Pre Tags

CDN使ってみる

ここで見つけたのでこれにしてみました。cdnjs - the missing cdn
また、投稿・固定ページのみで読み込みを行うようにします。本当は、[SyntaxHighlighter Evolved]のように使用するページのみでインクルードするようにしたらいいんですが、今回はページのタイプのみで振り分けしています。

add_action( 'wp_enqueue_scripts', 'my_prettify', 1001);
function my_prettify() {
    wp_deregister_script( 'prettify');
    wp_deregister_style( 'prettify');
    wp_dequeue_script( 'prettify-load');
    if ( is_single() || is_page()){
        wp_enqueue_style( 'prettify', '//cdnjs.cloudflare.com/ajax/libs/prettify/r298/prettify.css', array(), null );
        wp_enqueue_script( 'prettify', '//cdnjs.cloudflare.com/ajax/libs/prettify/r298/prettify.js', array(), null, true );
        wp_enqueue_script( 'prettify-load');
    }
}

スタイルをカスタマイズする場合は、子テーマのstyle.cssに以下のように追記するかたちにすれば、CSSもCDNのものを利用できます。

.entry-content pre.prettyprint,
.comment-content pre.prettyprint {
    ....;
}
  • このエントリーをはてなブックマークに追加

関連記事

n__twenty-twelve

ie.cssの子テーマ化など Twenty Twelve 1.1での変更点

TwentyTwelveが1.0から1.1にアップデートされたので、勉強もかねていくつか変更点を洗ってみました。 ie.cssを外出し pubdateの削除 rel="generator"

no image

投稿タイトル(entry-title)を非表示にする

表題通り「投稿タイトルを表示しない」ことは、"投稿ページ"ではあまりないと思いますが、"固定ページ"では意外とあったりします。 編集画面でTitleを入力しないでおけば、それで済むのですが、ペー

wp-1086

コメントフォーム・リストのカスタマイズ

コメント投稿部分は、基本的にはどのテーマでも同じフォームを出力してテーマのstyle.cssで外観を変えています。コメントフォーム欄をカスタマイズするには、プラグインもしくはフックを用いてカスタマイズ

n__0752

Twenty Eleven カスタマイズ

目次 author-info 消す 作成者(投稿者)を消す 投稿者情報を表示しない proudly powered by wordpressのリンクをコピーライトに変更

no image

ソーシャルボタン設置 プラグイン

各種メジャーなソーシャルメディアボタンを設置できるプラグイン WP Social Bookmarking Light 国産プラグイン。国産ゆえ、はてなボタンの設置も可能 ダウンロード Twe

no image

「最近の投稿」ウィジェット カスタマイズ

目次 ウィジェットを削除 標準の設定 特定のカテゴリーに属する投稿を除外 カスタマイズ プラグイン 「最近の投稿」ウィジェットを削除 「最近の投稿」ウィジェット

n__1092

ツールチップ実装プラグイン「WordPress Tooltip」

「WordPress Tooltip」は、WordPressにツールチップを実装できるプラグインです。jQueryプラグイン「TipTip」を組み込んでいます。プラグインページの対応バージョンは古めで

no image

Google+ プラスワン(+1)ボタンの設置

Google+の+1ボタンの設置はプラグインを使用しなくても容易に実装できるようです。ソーシャルボタン設置のプラグインはこちらにいちおうまとめています。 プラスワン(+1)ボタンの設置コード 公式

no image

アップグレードで「更新を展開しています... 」のままになった場合の対処のひとつ

久々に出会ったような気がするのでメモです。 ローカルのテスト環境でWordPressを3.7から3.8にアップグレードしようとしたところ、「更新を展開しています... 」で止まってしまい更新処理がす

no image

「編集(Edit)」リンクの非表示方法

ログインした状態で投稿ページを開くと投稿内や各コメントに各編集ページへリンクしてくれる「編集」リンクが表示されます。(繰り返し言いますが、自サイトにログインしているユーザにしか見えません。) こ

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です


*

PAGE TOP ↑