概要
elementor/admin/after_create_settings/{$page_id}
は、Elementorの設定が作成された後に実行されるフックです。このアクションは、特定のページIDに関連する設定をカスタマイズしたり、設定が作成された後に追加の処理を行う際に利用されます。具体的には、ページの設定を初期化したり、カスタムオプションを追加したりするのに役立ちます。このフックは、主に以下のような機能を実装する際に使用されます。
- カスタム設定フィールドの追加: Elementorのページに独自の設定オプションを追加するため。
- システム通知やメッセージの表示: 設定が適用されたことをユーザーに伝えるためのメッセージを表示する。
- 他のプラグインとの統合: Elementorの設定を他のプラグインの設定と連携させるため。
- 初期値の設定: Elementorのページ作成時にデフォルト値を設定するため。
- エラーハンドリング: 設定の作成中にエラーが発生した場合の処理を追加するため。
- CSSやJSの読み込み: ページ特有のスタイルやスクリプトを読み込むため。
構文
add_action('elementor/admin/after_create_settings/{$page_id}', 'your_callback_function');
パラメータ
$page_id
: 設定が作成されたページのID。
戻り値
このアクションには戻り値はありません。
利用可能なプラグインとWordPressのバージョン
- Elementorのバージョン: 3.0以降
- WordPressのバージョン: 5.0以降
サンプルコード
サンプル1: カスタム設定フィールドの追加
add_action('elementor/admin/after_create_settings/123', function($page_id) {
$settings_manager = ElementorPlugin::$instance->get_settings_manager();
$settings_manager->add( 'custom_field', 'value', $page_id );
});
このコードは、特定のページIDにカスタムフィールドを追加します。
サンプル2: システム通知の表示
add_action('elementor/admin/after_create_settings/456', function($page_id) {
add_settings_error('elementor_notifications', 'custom_message', 'Settings saved successfully.', 'updated');
});
このコードは、設定が正常に保存された後に通知を表示します。
サンプル3: デフォルト値の設定
add_action('elementor/admin/after_create_settings/789', function($page_id) {
$option_name = 'default_option';
if(!get_option($option_name)){
update_option($option_name, 'default_value');
}
});
このコードは、設定が作成された際にデフォルトオプションを設定します。
サンプル4: CSSの読み込み
add_action('elementor/admin/after_create_settings/321', function($page_id) {
wp_enqueue_style('custom-style', plugins_url('css/custom-style.css', __FILE__));
});
このコードは、特定のページにカスタムCSSを読み込みます。
サンプル5: エラーハンドリングの追加
add_action('elementor/admin/after_create_settings/654', function($page_id) {
if (some_error_condition()) {
error_log('An error occurred for page ID ' . $page_id);
}
});
このコードは、設定の作成中にエラーが発生した場合にそのエラーをログに記録します。
この関数のアクションでの使用可能性
アクション | 使用例 |
---|---|
mu_plugin_loaded | |
registered_post_type | |
plugins_loaded | |
wp_roles_init | |
setup_theme | |
after_setup_theme | |
set_current_user | |
init | |
register_sidebar | |
wp_loaded | |
send_headers | |
parse_query | |
pre_get_posts | |
wp | |
template_redirect | |
get_header | |
wp_head |