【読んだ】サイトの拡張性を飛躍的に高める WordPressプラグイン開発のバイブル
こちらの記事でも紹介したWordPress本。
Contact Form 7の三好さんらによるWordPressプラグインの開発入門。プラグインに限らず、特に管理画面まわりの勉強をするにあたって、まぁともかく良書です。
感想や難易度など
- WordPressテーマの構築や管理画面カスタマイズの経験は必要。さらにステップアップしてプラグイン開発をしたり、管理画面をより作りこんだりしたい人(まさに僕です)にちょうど良かった。
- これ読んだら即開発スタートできる訳ではないが、全体像と基本的な処理が見えるので必要に応じて自分で深めていきやすい。
- 内容は具体的にプラグインを開発するための詳しいコード例とかよりは、基本的なフックの使い方とか、管理画面の設定方法とかなのでフックや管理画面まわりの入門的技術書ととらえてもいいのかも。
- 広く浅く俯瞰する内容なので、既にある程度基本を抑えている人は不足を感じるかもですが、ネットでつまみ食いしてきた知識の抜け漏れを見直す意味での価値はかなりあるのでは。
※WEBデザインから入った人間の感想です。エンジニア畑の人から見たらまた別の感想になるのかも。
個人的に特に勉強になった部分
4-4コーディングスタンダードを理解する
不勉強ながら、そもそもWPのコーディングスタンダードの存在を知らなかったので大変参考になりました。インデントの方法やクラス名の命名規則など。毎回雰囲気でやってしまっていた…。
第7章WordPressのセキュリティ対策
データのバリデーションとCSRF対策。ネット情報つまみ食いの独学でやっていると見落としてしまうかもしれない部分。
第8章管理画面
このへんはまだ知見が浅いので、入門的な内容が大変勉強になりました。なんなら管理画面まわりのカスタマイズを学ぶために本書を読んだといっても良い。
目次
- 第1章WordPressプラグインとはなにか?
- 1-1プラグインとは?
- 1-2開発者にとってのプラグインのメリットとは?
- 1-3プラグインでできること
- 第2章オープンソース/GPLライセンス/エコシステムについて
- 2-1WordPressの自由とGPL
- 2-2WordPressをとりまくさまざまな収益モデル
- 第3章プラグインの開発環境を作る
- 3-1Vagrantで開発環境を構築する
- 3-2AWSを使用した開発環境を構築
- 3-3WP-CLIでWordPressをコマンドライン管理
- 3-4開発環境でのWordPressの設定方法
- 3-5ローカル開発環境
- 第4章プラグイン開発スタートアップガイド
- 4-1プラグイン開発に役立つさまざまな情報源
- 4-2プラグインの構造を理解する
- 4-3readme.txtの書き方
- 4-4コーディングスタンダードを理解する
- 4-5プラグインをクラス化し、カプセル化する
- 4-6はじめてのプラグインをつくる
- 第5章フィルターフックとアクションフックを理解する
- 5-1フィルター
- 5-2アクション
- 5-3プラグインが有効化されたときの処理について
- 5-4プラグインが無効化されたときの処理について
- 5-5プラグインのアンインストール時の処理について
- 5-6クイックリターン関数
- 第6章WordPressのデータ構造とクエリを理解する
- 6-1WordPressのデータ構造を理解する
- 6-2WordPressのクエリについて
- 第7章WordPressのセキュリティ対策
- 7-1データバリデーション
- 7-2WordPressにCSRF対策を施す
- 第8章管理画面
- 8-1管理画面にトップレベルのメニューを追加する方法
- 8-2管理画面にサブメニューを追加する方法
- 8-3管理画面を使って独自の設定を保存する
- 8-4管理画面におけるエラーメッセージの表示
- 第9章WordPressのエラー処理について
- 9-1WP_Errorを使ったエラー処理の方法
- 9-2WP_Errorのコンストラクタ
- 9-3WP_Errorクラスのメソッド
- 第10章PHPUnitでプラグインのテスト駆動開発を行う
- 10-1テスト駆動開発とは何か?
- 10-2プラグイン開発にPHPUnitを活用する
- 10-3WP-CLIによるテスト環境の構築
- 10-4ショートコードプラグインをテスト駆動開発で作る
- 10-5プラグインのテスト駆動開発に便利なその他情報源
- 第11章WordPressAPIリファレンス
- 11-1OptionsAPIおよびTransientAPI
- 11-2MetadataAPI
- 11-3HTTPAPI
- 11-4RewriteAPI
- 11-5WidgetAPI
- 11-6ShortcodeAPI
- 11-7DatabaseAPIとwpdbクラス
- 第12章公式ディレクトリへ登録しよう
- 12-1公式ディレクトリに申請するには?
- 12-2Subversionによるプラグ開発の流れ
- 12-3プラグインページについて
- 12-4ユーザーサポートの方法とTIPS
- 第13章プラグインの国際化対応
- 13-1国際化とは?
- 13-2国際化ライブラリ、GNUgettextについて
- 13-3国際化に必要なツール
- 13-4プラグインのメッセージを国際化しよう
- 13-5POTファイルを作成する
- 13-6プラグインの翻訳を行う
- 第14章マルチサイトについて
- 14-1マルチサイトの概要とメリット、デメリット
- 14-2シングルインストールとの違い
- 第15章プラグイン・クックブック
- 15-1CSSやJavaScriptを利用するためのレシピ
- 15-2WordPressが生成するURL(パーマリンク)を利用するためのレシピ
- 15-3投稿や固定ページに関するレシピ
- 15-4メディアファイルに関するレシピ
- 15-5管理画面に関するレシピ
- 15-6プラグイン作成時に使えるレシピ
- 15-7他サイトとの連携に関するレシピ
- 付録
- A-1wp_enqueue_scriptで利用できるJavaScriptライブラリ
- A-2プラガブル(Pluggable)関数
- A-3ドロップイン(Drop-ins)
- A-4ユーザーの種類と権限
- A-5日本のWordPressサイト貢献者
- A-6WordPressに貢献する方法
広告