フックとは、WordPressの決められたタイミングや場所に、後から処理を差し込む仕組みです。
WordPressでは、既存のテーマやプラグインをベースに機能を追加していくことが多くあります。
その際、元のファイルを直接編集するのではなく、フックを使って必要な処理だけ追加することで、安全に拡張できるようになっています。
フックを呼び出す(差し込み口を作る)
まず、処理を追加できる場所をPHPファイル側に作成します。
例として、任意の場所に my_hook1 というフックを設置します。
do_action() は、
「ここに後から処理を追加できます」
という目印を作る関数です。
フックに処理を登録する
実際に表示する内容は、functions.php に記述します。
// フック登録
function add_text()
{
echo ‘
独自で作ったhook1′;
}
add_action(‘my_hook1’, ‘add_text’);
このコードでは、
add_text() → 実行する処理
add_action() → フックへ処理を登録
を行っています。
なぜフックを使うのか
WordPressでは、他の人が作ったテーマやプラグインを利用してサイトを構築することが多くあります。
もし親テーマを直接編集してしまうと、
テーマ更新
↓
編集内容が上書きされる
↓
追加したコードが消える
という問題が発生します。
そこで、
親テーマ → 元の機能を管理
子テーマ → 独自機能を追加
という役割分担を行います。
子テーマの functions.php にフックを使って処理を追加しておけば、アップデート時の影響を受けにくくなります。
フックはWordPressの色々な場所で使われている
今回は画面表示を例にしていますが、実際にはWordPressの多くの機能がフックで作られています。
例えば、
テーマの共通処理
プラグインの拡張
管理画面の追加機能
表示内容の変更
などです。
ゆうやさんが触っている環境でいうと、
Cocoon
WooCommerce
なども、内部ではフックを活用して機能を組み立てています。
すべてを覚える必要はありませんが、
「WordPressはフックで後から機能を追加できる仕組みになっている」
という考え方だけ理解しておくと、テーマやプラグインの全体像がかなり見えやすくなると思います。

