アクションフック

php
add_action( $hook_name, $callback, $priority, $accepted_args );
$hook_name

コールバックを追加するアクションの名前

$callback

アクションが呼び出されたときに実行されるコールバック

$priority

コールバック関数が実行される順序(default:10

$accepted_args

関数が受け入れる引数の数

基本的な使い方

php
// 例)フック「diver_main_wrap_before」で関数「custom_my_function()」を実行したい場合add_action( 'diver_main_wrap_before', 'custom_my_function');function custom_my_function(){    echo '<p>Hello World!</p>';}

コールバック関数の実行順序について

アクションフックに対して複数のコールバック関数を実行する場合があります。その際に実行順序を指定することで項目を並び替えたりすることが可能です。

コールバック関数の実行順序を指定しない場合には、デフォルトで10が適用されます。実行順序が指定されている場合には

javascript
// 同じフックで複数の関数を実行するadd_action( 'diver_main_wrap_before', 'custom_my_function_a' );add_action( 'diver_main_wrap_before', 'custom_my_function_b' );add_action( 'diver_main_wrap_before', 'custom_my_function_c' );

custom_my_function_acustom_my_function_bcustom_my_function_cの順番で実行されます。

次にそれぞれのコールバックに実行順序を指定してみましょう。

javascript
// 同じフックで複数の関数を実行するadd_action( 'diver_main_wrap_before', 'custom_my_function_a', 20 );add_action( 'diver_main_wrap_before', 'custom_my_function_b', 30 );add_action( 'diver_main_wrap_before', 'custom_my_function_c', 10 );

実行順序は数値の低い順番に実行されますので、custom_my_function_ccustom_my_function_acustom_my_function_bの順番で実行されます。

re:Diverのカスタマイズでよく使われるアクションフック一覧

re:Diverにはたくさんのアクションフックが搭載されております。アクションフックを利用することで無限大のカスタマイズを実装することが可能です。

サイト全体

サイト全体のほとんどのページで実行されるフックです。特定のページで表示・非表示を切り替える場合には、フックする関数内で条件分岐を設定してください。

  • diver_body_before
  • diver_body_after
  • diver_main_wrap_before:コンテナー上部
  • diver_main_wrap_after:コンテナー下部
  • diver_main_before:メインエリア上部
  • diver_main_after:メインエリア下部

コンテンツエリア

メインエリア内のコンテンツエリア内にて実行されるフックです。

  • diver_single_main_header
  • diver_single_main_section
  • diver_single_main_footer


SHARE:
記事一覧