前回は「Hello world」をフッターに表示する簡単なプラグインを作成しました。
私もここまでは簡単にできました。いろいろなサイトに簡単なプラグインが紹介されているので、同じようにファイルを設置し、動作させることはできました。
問題はここからでした。自分が実現しようとしているプラグインを作成するためには、どのようなフックポイントに対してプラグインを作成すればいいのか、さっぱりわからないのです。
今回は、そのフックについて説明します。
フック
WordPressのプラグイン機能はフックが鍵となります。前回の「Hello world」で言うと「add_action(‘wp_footer’, ‘helloworld’);」の中の「wp_footer」の部分ですね。フックといわれてもピンと来ないのでWikiPediaで調べてみると
フック(Hook)は、プログラム中の特定の箇所に、利用者が独自の処理を追加できるようにする仕組みである。また、フックを利用して独自の処理を追加することを「フックする」という。
と書かれています。
また、WordPressのCodexで調べてみると
WordPress はプラグインを WordPress 本体に “引っ張り込む (hook into)” ためのフックを提供しています。これはつまり、特定のタイミングでプラグインの関数を呼び出したり、それによってプラグインを作動させたりするためのものです。
と書かれていました。
WordPressでは、起動から初期化、コンテンツの読み出し、ヘッダー出力、フッター出力と様々な処理を行って表示を行います。それらの処理のところどころにフックポイントが用意されていて、プラグイン作成時はそのフックポイントに対して処理を記述していく。ということになります。
WordPressのCodexでは、フックポイントの一覧が掲載されています。
様々なフックが載っていますが、
・どのタイミングで呼ばれるのか?
・どような変数が渡され、返すことができるのか?
さっぱりわかりませんでした。
また、アクションフックとフィルターフックの違いについても、私はしばらく理解することができませんでした。次回は、そのあたりを詳しく説明したいと思います。
ロゴスウェア
最新記事 by ロゴスウェア (全て見る)
- Amazon Linux(EC2)と PHPSTORM で Xdebug を行う - 2018年9月26日
- やらないことの合意 - 2018年6月27日
- 卒園アルバムとプロジェクトマネジメント - 2018年3月30日
Comments are closed.