概要
elementor/init
アクションフックは、Elementorが初期化される際に実行されるフックです。このフックは、Elementorの機能を拡張したり、カスタムウィジェットや設定を追加したりするためによく使用されます。以下は、このアクションフックが良く使われる機能の例です。
- カスタムウィジェットの登録
- CSS/JSファイルの追加
- 新しいテンプレートの作成
- カスタム設定の追加
- 既存ウィジェットのカスタマイズ
- フロントエンドのスクリプトの条件付き読み込み
構文
add_action('elementor/init', 'your_custom_function');
function your_custom_function() {
// カスタム処理
}
パラメータ
このアクションは、特に引数を受け取ることはありませんが、elementor/init
が発火するタイミングで、Elementorのインスタンスアクセスが可能です。
戻り値
このアクションフックの戻り値は特にありません。主に副作用を持つ関数を実行します。
使用可能なプラグインバージョン
- Elementorバージョン: 3.0以上推奨
- WordPressバージョン: 5.0以上推奨
サンプルコード
サンプル 1: カスタムウィジェットの登録
このサンプルコードは、Elementorで新しいカスタムウィジェットを登録するためのものです。
add_action('elementor/init', function() {
require_once('path/to/your/custom-widget.php');
ElementorPlugin::instance()->widgets_manager->register_widget_type(new Your_Custom_Widget());
});
このサンプルでは、カスタムウィジェットを作成し、Elementorに登録しています。
サンプル 2: スタイルシートの読み込み
このサンプルは、特定のスタイルシートをElementorのフロントエンドに追加するものです。
add_action('elementor/init', function() {
wp_enqueue_style('your-custom-style', get_template_directory_uri() . '/css/custom-style.css');
});
このコードは、カスタムスタイルシートをロードし、Elementorのページに追加します。
サンプル 3: 新しいショートコードの追加
Elementor内でカスタムショートコードを定義するためのサンプルコードです。
add_action('elementor/init', function() {
add_shortcode('your_shortcode', function($atts) {
return "<div>Your custom shortcode output</div>";
});
});
この例では、Elementor内で使用できるショートコードを追加しています。
サンプル 4: カスタム設定の追加
Elementorの設定に新しいオプションを追加するサンプルです。
add_action('elementor/init', function() {
ElementorPlugin::instance()->settings_manager->add_category(['your_category' => 'Your Category']);
});
このコードにより、Elementorの設定に新しいカテゴリが追加されます。
サンプル 5: フロントエンドスクリプトの追加
特定のスクリプトをElementorのフロントエンドに追加するための例です。
add_action('elementor/init', function() {
wp_enqueue_script('your-custom-script', get_template_directory_uri() . '/js/custom-script.js', ['jquery'], null, true);
});
このサンプルは、jQueryに依存したカスタムスクリプトを読み込むもので、フロントエンドで動作します。
この関数のアクションでの使用可能性
アクション | 使用例 |
---|---|
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 | |
elementor/init | 〇 |
この表は、elementor/init
アクションフックのその他のWordPressアクションでの使用例の有無を示しています。