WordPressの自作テーマでプラグインが動かなかった理由


この記事の所要時間: 149

こんにちは。ユニキャストの疋田です!
今日WordPressを自作したテーマで作成している際に、プラグイン- WP Most Popular -が動かなくなってしまい原因を探求するのに結構時間を取られてしまいました。今回はそのとき何が原因だったかを書いておきます。
最初全く分からず、表示させているソースコードやDBから原因を探っていたんですが、おかしいところはなさそうだしで悩んでいました。
結局、先輩に頼って原因を発見してもらいました(笑)

意外と単純なところに原因があったみたいです。

結果からいうと原因はプラグインAPIフックを記述していなかったところです。

WordPressはプラグインをWordPressに引っ張るために2種類のフックを提供しています。それはアクションフックとフィルターフックです。フィルターフックに関しては以前の記事で簡単に触れました。今回の原因はアクションフックです。詳しくは公式ドキュメントをご覧ください。
プラグイン API – WordPress Codex 日本語版 http://wpdocs.sourceforge.jp/Plugin_API

通常プラグインはアクションフックを通してwordpressに機能を追加します。プラグインはヘッダー、フッター、サイドバー、ページの本文等に、情報を直接表示できるようにするためのアクションフックが幾つかあります。だからアクションフックのテンプレートタグをしっかりと書いておかなければならないのです。
アクションフックのテンプレートタグは4種類あります。

wp_header()
wp_footer()
wp_meta()
comment_form()

デフォルトのテーマを使ってカスタマイズしている場合には、すでに書かれているため意識する必要はありませんが、テーマを自作する場合には不具合が起こる可能性があるため、書いてあるかどうかを確認してみてください。
私の教訓として、テーマを自作する場合には最初に、公式ドキュメントをしっかりと読んでおくことをおすすめします。そうすれば無駄に時間を割くことは少なくなるはずです(笑)

投稿者紹介

疋田駿
Unicast Inc. ソフトウェアエンジニアRuby,Rails,React,Redux,ReactNative,Android,Elasticsearch,Dockerとか触りながら生計を立ててる。Thinkpad×fedora。ErgoDox愛好家な一児の父。

人気の記事

コメント

コメントを残す

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

PAGE TOP