WordPressのadd_actionフックをより深く見る

WordPressの開発ではフックWordPressには主に2種類のフックがあります:アクション・フックとフィルター・フック.その中で追加アクション アクションフックを追加するために使用します。これにより、WordPressの実行時に特定のタイミングでカスタム関数を実行することができます。

画像[1]-WordPressのadd_actionフックの詳細:使用例とベストプラクティス

この記事では 追加アクション フックについて、一般的なアプリケーションのシナリオとフックの例をいくつか挙げている。

それは何ですか? 追加アクション フック?

ワードプレスでホックは、特定の機能を実行するためのあらかじめ決められたポイントである。WordPressが特定のアクションを実行するとき、開発者はフックを使ってカスタムコード.追加アクション が特定のイベントをトリガーするときに使われるフック・タイプのひとつである。カスタム機能。

利用する 追加アクション その際、指定する必要がある:

  1. フック名イベントの名前。
  2. コールバック関数イベントがトリガーされたときに実行されるカスタム関数。
  3. 優先順位(オプション)フックの実行順序を決める。デフォルトは10。
  4. 引数(受理された引数)(オプション)コールバック関数に渡されるパラメータの数を定義します。
画像[2]-WordPressのadd_actionフックの詳細:使用例とベストプラクティス

基本的な使い方

コールバック関数の定義まず、コールバック関数を定義する必要がある。これは、フックがトリガーされたときにシステムが実行するコードだ。例えば

追加アクション 基本的な構文は以下の通り:

php
add_action( 'フック名', 'コールバック関数', priority, 引数の数 );

php
ファンクション my_custom_function() {
    echo 'こんにちは、世界!
}
add_action( 'wp_footer', 'my_custom_function' ); }.

この例では、WordPressが wp_footer フックは my_custom_function 関数を出力する。 ハロー、ワールド!.

ありがち 追加アクション フックの例

1. wp_head

wp_head はWordPressテーマでよく使われるフックで、開発者がページの <head> カスタムコンテンツを部分的に挿入します。通常、CSS、JavaScript、メタタグなどを挿入するために使用します。

php
関数 add_custom_css() {
    echo ''; }.
}
add_action( 'wp_head', 'add_custom_css' );

2. wp_footer

wp_footer も一般的なフックで、トリガーされると通常はページの <フッター セクションを追加しました。カスタムJavaScriptや分析コードなどを挿入することができます。

php
関数 add_tracking_code() {
    echo ''; }.
}
add_action( 'wp_footer', 'add_tracking_code' ); }.

3. 開始

開始 このフックは、WordPressの読み込みが完了した後、最も早い時点のひとつにあります。このフックを使って、プラグインの設定を初期化したり、カスタム投稿タイプやタクソノミーを登録したりすることができます。

php
関数 my_plugin_init() {
    // カスタム投稿タイプを登録する
    register_post_type( 'my_custom_post_type', [ )
        'labels' => [
            'name' => 'マイカスタム投稿タイプ'、
            'singular_name' => 'カスタム投稿タイプ'
        ], 'public' => true, 'post_type', 'custom_post_type'
        
    ]);
}
add_action( 'init', 'my_plugin_init' );

4. 管理メニュー

管理メニュー フックはWordPress管理画面のバックエンドにカスタムメニューを追加するために使用されます。このフックは通常プラグイン開発において、開発者が管理ページを作成する際に使用されます。

php
関数 my_custom_menu() {
    add_menu_page( 'マイカスタムページ', 'カスタムメニュー', 'manage_options', 'custom-page', 'my_custom_page_function' );
}
add_action( 'admin_menu', 'my_custom_menu' ); }.

関数 my_custom_page_function() {
    echo '<h1>マイ・カスタム・ページへようこそ!</h1>';
}

5. セーブポスト

セーブポスト は、投稿を保存するときにトリガーされるとても便利なフックです。このフックを使って、カスタムフィールドを自動的に保存したり、その他のロジックを実行したりといったアクションを実行できます。

php
function my_save_post_action( $post_id ) { { { $post_idを保存します。
    if ( defined('DOING_AUTOSAVE') && DOING_AUTOSAVE ) return $post_id ;
    if ( get_post_type( $post_id ) != 'post' ) return $post_id;

    // カスタムアクションを実行する
    update_post_meta( $post_id, '_my_custom_meta_key', 'Some custom value' ); } // カスタムアクションを実行します。
}
add_action( 'save_post', 'my_save_post_action' ); }.

優先順位とパラメータの設定

1. 優先順位

追加アクション フックでは、各コールバック関数の優先順位を指定することができます。デフォルトの優先度は10です。優先度を調整することで、開発者は同じフックで複数の関数が実行される順番をコントロールすることができます。優先順位の値が小さいコールバック関数が最初に実行されます。

php
ファンクション my_first_function() {
    echo '最初に!
}
add_action( 'wp_footer', 'my_first_function', 5 ); // 優先度5

関数 my_second_function() {
    echo '2番目!
}
add_action( 'wp_footer', 'my_second_function', 15 ); // 優先度15

この例ではmy_first_function の方が優先順位が低いので、先に実行される。

2. パラメーター

フックの中にはコールバック関数にパラメータを渡すものがあります。コールバック関数にパラメータを渡すには accepted_args コールバック関数が受け付ける引数の数を指定します。例

php
function my_custom_comment_function( $comment_id ) { // コメントに関連するアクションを実行します。
    // コメントに関連するアクションを実行する
    echo "コメントIDは: $comment_id"; } // コメントに関連するアクションを実行します。
}
add_action( 'comment_post', 'my_custom_comment_function', 10, 1 );

概要

追加アクション は、WordPress のライフサイクルにカスタムロジックを挿入できる、WordPress の非常に強力な機能です。メニューの追加であれ、カスタム投稿タイプの登録であれ、ページの特定部分へのコードの挿入であれ追加アクション いずれも高度なカスタマイズを実現するのに役立つ。

をマスターすることで 追加アクション フックを使用することで、開発者はWordPressでより豊かで柔軟な機能を作成することができます。この記事がWordPressのフックシステムをよりよく理解し、使用する助けになることを願っています。


お問い合わせ
チュートリアルが読めない?無料でお答えします!個人サイト、中小企業サイトのための無料ヘルプ!
カスタマーサービス WeChat
カスタマーサービス WeChat
電話:020-2206-9892
QQ咨询:1025174874
Eメール:info@361sale.com
勤務時間: 月~金、9:30~18:30、祝日休み
© 複製に関する声明
この記事を書いた人:I heard your name is Bo
終わり
好きなら応援してください。
クドス7121 分かち合う
解説 ソファ購入

コメントを投稿するにはログインしてください

    コメントなし