WordPressでフィルターフックを使ってみよう!
前回はアクションフックを使って、投稿保存時に特定の操作をする方法などについて紹介しました。今回はもう一つのフックであるフィルターフックについて見ていきます。
アクションフックは、投稿時や管理画面生成時などのアクションに対して、実行されますが、フィルターフックはデータに対して何か操作をします。
フィルターフックの場合はadd_filter()を使います。書き方はアクションフックと同じで第1引数にフック名、第2引数に関数、第3引数に実行順序、第4引数に関数に渡す引数の数を指定します。
まずは、編集画面で表示する内容を変更してみましょう。
the_title()を使います。
いつも通り、my-plugin.phpにつけたします。
function add_id_title($title, $id) { return 'ID='.$id.$title; }add_filter('the_title', 'add_id_title', 10, 2);
実行して、投稿一覧を確認してみましょう。
こんな感じで ID がタイトルの前に付け加えられているのがわかります。
このように、表示する前にデータを取得して、表示内容を変更できます。