ワードプレスで指定のフックに登録された関数を手軽に調べる方法

ワードプレスで指定のフックにフックされた関数を手軽に調べる方法
2018年8月5日2021年8月26日

WordPressでフックを使用してカスタマイズをしていると、慣れないうちは思いがけず上手く動かない事もしばしば。使いたいアクションフックやフィルターフックに、どんな関数がどんな順序で登録されているのか調べたい事って、少なからずあるのではないでしょうか。

という事で今回は、指定のアクション/フィルターフックに追加されている関数の一覧を表示できるショートコードを作ってみました。非公開のテストページ上に記述してプレビューで確認できます。

functions.phpにコードを追記

ショートコードを追加するコードです。コピーして、お使いのテーマのfunctions.phpの最後にでも貼り付けて下さい。

13行目のコメントアウトを消すと、さらに詳細を表示できますが、メモリ不足でエラーが出るケースがあるので、コメントアウトしてあります。

2021-08-26 上記の詳細表示によるメモリ関連のエラーで、このページが閲覧できなくなっていたのを修正しました。それに合わせてショートコードも編集してあります。

テスト用ページを作成

投稿ページでも固定ページでもよいのですが、本文に下のコードだけを書いたページを公開状態を「非公開*」にして作成しておきます。何でもいいので、使いたい時に見つけやすいタイトルを付けておいて下さい。ショートコードが動いてしまうので、本来必要なカッコを書いていません。[○○]と、角カッコ?大カッコ?の中に書いてください。

※下書きでも別に問題ありませんが、(私は)うっかり公開してしまいやすいので非公開がおすすめです。

とりあえずwp_footerとなっていますが、この部分を調べたいフックの名前に変更しましょう。このページをブラウザで見れば関数の一覧が表示されます。

例:the_contentを調べる場合

例を挙げておきます。the_contentにフックされている関数を表示するには、以下のショートコードを書きます。

実際の表示

以下は、実際にショートコードの引数をwp_footerとして出力したものです。

wp_footerに登録されている関数

priority:10

  1. [000000004fa84d08000000000515ad33menu_render_on_frontend]
  2. [back_to_index]
  3. [add_origin_thanks_page]
  4. [000000004fa84bf6000000000515ad33footer]

priority:20

  1. [wp_print_footer_scripts]

priority:99

  1. [000000004fa84bf7000000000515ad33lateInit]

priority:1000

  1. [wp_admin_bar_render]

最後に

上の例の中にもありますが、関数名の部分が何だかわからない数字の羅列になってしまっている部分は、add_filterとかする時にfunctionに名前を付けていない場合(無名関数を使用している場合)のようです。

One Reply to “ワードプレスで指定のフックに登録された関数を手軽に調べる方法”

Comments are closed for this post.

関連のある記事

ワードプレスの管理画面メニューのラベルテキストを変更する方法

ワードプレスの管理画面メニューのラベルテキストを変更する方法

記事を読む

【初心者向け・目的別】ワードプレスでURLやパスを取得する関数まとめ

【初心者向け・目的別】ワードプレスでURLやパスを取得する関数まとめ

記事を読む

MW WP Formで郵便番号から住所を自動入力させる方法

MW WP Formで郵便番号から住所を自動入力させる方法

記事を読む

MW WP Formで動的にフォームのデフォルト値を設定する方法

MW WP Formで動的にフォームのデフォルト値を設定する方法

記事を読む

MW WP Formのセレクトボックス・チェックボックス・ラジオボタンを動的に設定する方法

記事を読む

ブロックエディタ(Gutenberg)の編集画面にeditor-style.cssを読み込ませる方法【WordPress】

ブロックエディタ(Gutenberg)の編集画面にeditor-style.cssを読み込ませる方法【WordPress】

記事を読む

Generic selectors
Exact matches only
Search in title
Search in content

目次へ