PHPによるWordPressカスタマイズブック 3.x対応

WordPressでサイトやブログを運用していて、もっと自分好みにカスタマイズしたいと思った事はありませんか?

この書籍「PHPによるWordPressカスタマイズブック―3.x対応(著者・藤本壱)」は一般的なWordPressの書籍と違い、インストール方法とか記事の打ち込み方、基本的なテンプレートや関数の説明と言った事にはほとんど触れられていません。

また、サイトやブログのサンプルを作りながらの解説書とは違い、関数のプロパティーやパラメーターの一覧、割り当てられたグローバル関数の値などが載せてあり、それらがどう関係し、実行結果はどうなるかまで載せられているので、WordPressの内部の動きに興味のある人には、とても面白い内容だと思います。

ひと工夫・ふた工夫して、他とはひと味違うオリジナルのブログやサイトを作りたい人や、WordPressの仕組みについてもっと良く知りたいけど、普通のWordPressの解説書では物足りなくなっている人に読んでもらいたい本です。

関数を使ったカスタマイズの説明や、関数を使わずデータベースから直接データを取得する方法、またプラグインの作り方をの説明を中心に書かれています。

特に面白いのが

①データベースに直接アクセスしてデータを取得する方法
②プラグインの作り方

です。

①データベースに直接アクセスしてデータを取得する方法

「単一ブログの場合」と「ネットワーク機能で複数ブログが管理されている場合」それぞれのテーブル構造の解説が、「コンテンツ系」「分類系」「ユーザー」「コメント/トラックバック関係」を中心に、テーブルの結合も含め、わかり易くまとめられています。

 また、wpdbクラス(ezSQLクラスライブラリをWordPress用に改良したもの)のオブジェクトを割り当てたグローバル変数$wpdbを通してデータベースにアクセする方法も書かれています。

WordPressのバージョンアップでデータベース構造に変更が有るかもしれない危険性はありますが、WordPressの標準関数では指定できない複雑な条件設定が出来たり、関数を使わない分、高速かも図れたりするので、試してみたくなります。

wpdbクラスを使ったデータベースへのアクセスは、他の書籍ではあまりお目にかかった事が無いので、貴重な資料だと思います。

wpdbクラスを使った実例として、「最近90日間でコメントが多い投稿リストの表示方法」「画像一覧のページを作る方法」「ネットワーク機能で管理している複数ブログの、各ブログ最新5記事の一覧を作る方法」「ネットワーク機能で管理している複数ブログの、全ブログをまとめて最新一覧をサイドバーに表示する方法」が載せられています。

②プラグインの作り方

WordPressのプラグインの基本であるアクションとフィルター、フックの使い方について、実例を元に説明しています。

サイドバーに、表示しているページの記事が所属するカテゴリーの、投稿の一覧を表示するプラグインの制作実例で、フィルターの使い方を説明。

自動的にHTMLのヘッダー(〜)内にmetaタグを追加し、時刻を表示させるJavaScriptを組み込むプラグインの実例で、アクションと、WP_headの使い方を通してフックの使い方を説明しています。

この書籍が他書とはちょっと違うのが、プラグインの制作方法自体を最初から最後迄載せている事です。

まず仕様を決め、プラグインファイルにプラグイン情報を記述し、仕様に合わせて関数やパラメーターを定義し、HTML部分の組み立てを行い、結果を出力する部分を作るという、プラグインを完成させる手順を、コードやフローチャートも使いながら説明してくれます。

また、プラグインが他国語で使える様に、複数言語化する方法も教えてくれます。

複数言語化するには、プログラム自体のメッセージは英語で書いておき、各言語ファイルを用意して、対応させるのます。日本語も各言語ファイルの一つとして扱います。そして言語ファイルは複数言語ツールgettextに対応したものにします。

その為の具体的な方法の

  1. プラグインプログラムにある英語のメッセージを各国語に対応させるアプリ「Poedit」のインストール方法
  2. 英語のメッセージを持つ完成したプラグインに各言語ファイルを読み込ませる方法
  3. 「__関数」と「_e関数」を利用して翻訳できる様にする方法
  4. 環境を構築し言語ファイルを作成し、読み込ませる方法
  5. 「Poedit」を使って各言語ファイルを作成する方法

を全て教えてくれます。

WordPressプラグインの複数言語化に関する書籍にも、なかなかお目にかかれ無いので、これも貴重な資料だと思います。

また、他に

  1. 自己完結型ショートコード [ ショートコード名 属性=”値” 属性=”値”…… ] や囲み型ショートコード [ ショートコード名 属性=”値” 属性=”値”…… ]テキスト[ /ショートコード名 ] のプラグインの作り方。
  2. WP_Widgetクラスを使ったショートコードでウィジェットのプラグインの作り方。
  3. プラグイン用設定画面の作り方。
  4. プラグインのアンインストールに対応さる方法。

が説明されています。

 感想・・・初級から中級に上がろうとしている人向けの書籍です。

ですので、PHPとSQLについて基本的な事が分かっていて、WordPressのテーマも作ったり、カスタマイズした経験がある人を対象としています。

初歩的なPHPやWordPressの関数などの知識がある事が前提で説明がされている為と、ページ数の制限の為か、なぜそうするのか?なぜそうなるのか?の細かな説明が省かれていたり、具体的にどんな事をしているのかを細かく説明せず、「いくつかの初期化をまとめて行う。」などと省略している箇所が所々有ります。意味が分かり難くく、他の書籍やネットで調べ直した部分も有りました。もうちょっと上手く説明してもらえれば、ありがたいです。
先生のペースでどんどん進んでいく授業を連想しました。

PHPによるWordPressカスタマイズブックは2009年9月にWordPress 2.8対応版が出され、翌年2010年9月に、このPHPによるWordPressカスタマイズブック―3.x対応が出版されました。

3.0対応版なので、参考に使われているテーマもTwenty tenです。またWordPressループもTwenty Tenのループが使われているので、最近、WordPressのカスタマイズを初めたユーザーは、最初、書かれているコードに少し違和感をかんじるかもしれません。

WordPressのバージョンは、既に3.5.1から3.6になりますが、ここ迄技術的に踏み込んだWordPressの解説書は無いので、まだ貴重な資料として、参考になると思います。

同じ著者がWordPressの関数について解説しているWordPress関数リファレンスガイドはWordPress標準関数について書かれていますので、合わせて読まれるとお互いを補完し合って、よりWordPressの事が理解できる様になると思います。

まだまだ使える書籍です。


PHPによるWordPressカスタマイズブック―3.x対応

 

コメントを残す

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

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください