概要
elementor/loggers/register
アクションは、Elementorプラグインにおいて、カスタムロギング機能を登録するためのハンドラーを追加するために使用されます。このフックを利用することで、開発者は独自のログ機能を実装したり、特定のイベントに基づいてログを記録する機能を作成したりすることができます。主に以下のような機能を実装する際に利用されます。
- ユーザーアクションの監視
- コンテンツ変更履歴の記録
- エラーログのカスタム処理
- フォーム送信のトラッキング
- システムメンテナンスの管理
- アナリティクスデータの収集
構文
do_action( 'elementor/loggers/register', $logger_instance );
パラメータ
$logger_instance
: ログを記録するためのインスタンス(通常は Logger クラスのインスタンス)。
戻り値
このアクションには戻り値はありません。
使用可能なプラグインとバージョン
- Elementor: バージョン 2.0 以降
- WordPress: バージョン 4.0 以降
この関数のアクションでの使用可能性
アクション | 使用例 |
---|---|
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 |
サンプルコード
サンプルコード 1: カスタムログの追加
add_action('elementor/loggers/register', function($logger_instance) {
$logger_instance->register_logger('custom_logger', 'My Custom Logger');
});
このコードは、Elementorのロガーにカスタムログを追加します。新しいロガーが「My Custom Logger」という名前で登録されます。
サンプルコード 2: 特定のアクションでログを記録
add_action('elementor/loggers/register', function($logger_instance) {
$logger_instance->register_logger('form_submission_logger', 'Form Submission Logger');
add_action('elementor_pro/forms/new_record', function($record, $handler) {
// ここでフォーム送信の記録を行います
$logger_instance->log('Form submitted: ' . json_encode($record->get( 'fields' )));
});
});
このコードは、フォームが送信された際にロギングを行うための準備をします。フォームのデータを記録します。
サンプルコード 3: エラーログのカスタム処理
add_action('elementor/loggers/register', function($logger_instance) {
$logger_instance->register_logger('error_logger', 'Error Logger');
set_error_handler(function($errno, $errstr) use ($logger_instance) {
$logger_instance->log('Error: ' . $errstr);
});
});
ここでは、カスタムエラーログを作成し、PHPのエラーを捕捉して記録します。
サンプルコード 4: アナリティクスデータの収集
add_action('elementor/loggers/register', function($logger_instance) {
$logger_instance->register_logger('analytics_logger', 'Analytics Logger');
add_action('wp_footer', function() use ($logger_instance) {
// ページビジットデータを収集
$logger_instance->log('Page visited: ' . get_permalink());
});
});
このコードは、ページが訪問された際にその情報をロギングします。
サンプルコード 5: ユーザーアクションの監視
add_action('elementor/loggers/register', function($logger_instance) {
$logger_instance->register_logger('user_action_logger', 'User Action Logger');
add_action('wp_login', function($user_login) use ($logger_instance) {
$logger_instance->log('User logged in: ' . $user_login);
});
});
ユーザーがログインする際に、そのアクションを記録するカスタムロガーを作成します。
以上のサンプルコードは、Elementorの elementor/loggers/register
アクションの使い方を示しており、それぞれ異なる目的での使用例を提供しています。