WordPressの「フック」という仕組みとその使い方ー①概要編ー
WordPressの高い拡張性の根幹となるフックを使いこなし、WordPressを自由自在にカスタマイズできるようになりましょう。
フックとは
フックとは、wordpressの様々な場面における出力結果を上書きしたり、機能の追加・削除を行うためのイベントトリガです。
フックの使用は次のような場面が考えられます。
・wordpress本体が備えている機能の改変・拡張を行いたい。
・プラグインの改変・拡張を行いたい。
つまり、コアファイルの内容を変更したいという場面ですね。
フックを使わずとも、コアファイルを直接書き換えてしまえば機能を修正するという目的自体は達成されるのですが、アップデートを行ってしまうとそのコアファイルは上書きされてしまうので、せっかく行った修正が全て消えてしまいます。
そのような場合はフックを利用し、コアファイルを修正することなく、コアファイルが本来行うはずだった挙動を間接的に変えてしまいましょう。
フックにはフィルターフックとアクションフックと呼ばれる二種類のフックが用意されています。
フックを使用しない通常の処理と、二種類のフックを使用した場合の処理の流れを次の例文でつかみましょう。
例文中で登場する魚屋がフックに相当します。
フックを使わない通常の処理
軍曹「かつお君。ハマチ買って来てくれ」
かつお「ハマチを買って来ました」
かつおは軍曹の指示通り、ハマチを買って来ました。これが通常の処理です。
フィルターフック
軍曹「かつお君。ハマチ買って来てくれ」
かつお「魚屋さん、ハマチください」
魚屋「活きが良いマグロが入ってるので、ハマチではなくマグロを買ってください」
かつお「軍曹、マグロを買って来ました」
かつおは魚屋にそそのかされ、ハマチではなくマグロを買って来てしまいました。
このようにフィルターフックでは本来の指示とは異なる結果を出力することができます。
アクションフック
軍曹「かつお君。ハマチを買って来てくれ」
かつお「魚屋さん、ハマチください」
魚屋「はいハマチどうぞ。ついでに活きが良いマグロも買ってください」
かつお「軍曹、ハマチとマグロを買って来ました」
かつおは魚屋にそそのかされ、ハマチとともにマグロも買って来てしまいました。
このようにアクションフックでは本来の指示と併せて別の結果も出力することができます。
以上がフックの概要となります。
実際のフックの使用方法は、次の記事へ続きます。