概要
elementor/widgets/black_list
フィルタは、Elementorプラグインで特定のウィジェットを非表示にするために使用されます。このフィルタを利用することで、ユーザーが特定のウィジェットを使用できないように制限したり、特定の要件に応じてカスタマイズすることが可能になります。以下は、elementor/widgets/black_list
フィルタがよく使用されるケースです。
- 特定のロールのユーザーに特定のウィジェットを非表示にする。
- 特定のウィジェットがサイトに不適切な場合、使用を制限する。
- テンプレートやデザインの一貫性を保つために、特定のウィジェットを隠す。
- サイトのパフォーマンス向上のため、不必要なウィジェットを削除する。
- 教育環境など、特定のユーザーに制限を設ける必要がある場合に使用する。
- クライアントサイトでのカスタマイズ管理を容易にするため。
このフィルタは、Elementor 2.0以降、およびWordPress 4.5以降のバージョンで利用可能です。
構文
add_filter('elementor/widgets/black_list', 'your_function_name');
パラメータ
$black_list
(array): 非表示にするウィジェットのスラッグを含む配列。
戻り値
- (array): 更新された非表示ウィジェットのスラッグのリスト。
サンプルコード
サンプルコード1
add_filter('elementor/widgets/black_list', function($black_list) {
$black_list[] = 'text'; // テキストウィジェットを非表示にします。
return $black_list;
});
このサンプルは、Elementorのテキストウィジェットを非表示にします。
サンプルコード2
add_filter('elementor/widgets/black_list', function($black_list) {
if ( ! current_user_can('administrator') ) {
$black_list[] = 'image'; // 管理者以外にイメージウィジェットを非表示にします。
}
return $black_list;
});
このコードは、非管理者ユーザーに対してイメージウィジェットを非表示にします。
サンプルコード3
add_filter('elementor/widgets/black_list', function($black_list) {
$black_list[] = 'video'; // 動画ウィジェットを非表示にします。
return $black_list;
});
このサンプルは、動画ウィジェットを全ユーザーから非表示にします。
サンプルコード4
add_filter('elementor/widgets/black_list', function($black_list) {
if (is_page('contact')) {
$black_list[] = 'slider'; // お問い合わせページでスライダーウィジェットを非表示にします。
}
return $black_list;
});
このコードは、お問い合わせページにおいてスライダーウィジェットを非表示にします。
サンプルコード5
add_filter('elementor/widgets/black_list', function($black_list) {
return array_merge($black_list, ['button', 'divider']); // ボタンと区切りウィジェットを非表示にします。
});
このサンプルは、ボタンおよび区切りウィジェットをすべてのユーザーから非表示にします。
この関数のアクションでの使用可能性
アクション | 使用例 |
---|---|
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 |