ここは僕の冷蔵庫。後はあれして食べるだけ。

I love the frozen FOOD.

wordpressは、テーマ(Theme)で画面のレイアウトを決定する。
当該テーマは、wordpressのコア機能(core)を呼出し、記事の表示などを行っている。
これが、wordpressのおおざっぱな仕組み。

コア機能

wordpressには、ほんと沢山のコア機能がある。そして、それぞれ「リング」のような「S字フック」をひっかけるような輪っかがついてると思ってちょうだい。
このリングにS字フックで機能をぶら下げると、大元の機能がよばれたとき、S字フックにひっかけた機能がよばれる仕組み。
例えば、(A)機能ののリングに、S字フックで「機能をぶら下げる」と、(A)機能が実行されるときに、ぶらさげた機能をwordpressがよんでくれる。便利便利。
これで、wordpressに「新しい機能を追加」することができるわけです。
たとえば、こんな感じで、沢山ぶらさげることも可能。


参考 : こうゆう考え方って、色々なところで見られます

フックとフィルター

では、wordpressでこのS字フックに機能をひっかける手続きは、どうするのん?という話にうつります。
フィルターとフックというのを使います。
今までイメージしてもらった機能は、「フック」機能そのままです。でも、同じ考えでフィルターもわかりますよ。

フック

add_actionという機能を使って、リングに機能をぶら下げます。
実装の方法などは、下記の記事をどうぞ。

参考 : wordpressのadd_action機能

フィルター

add_filterという機能を使って、リングに機能をぶら下げます。
ただ、ぶら下げるというより、空気清浄機みたいなフィルターを通してあげる感じです。
その機能に通った時、「必ずこのフィルターを通してね」という感じです。綺麗にする機能かもしれませんし、香りをつけてくれる機能かもしれませんね。
実装の方法などは、下記の記事をどうぞ。

参考 : wordpressのadd_filter機能

テーマとプラグイン

「テーマは、レイアウトを決めるも」と思いがちですが、実際には、上記のようなフィルターやフックが山のように定義されているものもあります。どちらかというと、プラグインで機能拡張するのが多いですけども。
さて、では、どこでこのフィルターやフックを定義するかというと、 function.phpです。

参考

参考記事


コメントを残す

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

CAPTCHA


*