概要
フィルタ acf/field_group/enable_field_browser は、Advanced Custom Fields (ACF) プラグインにおいて、フィールドタイプ選択モーダルを無効にするために、[フィールドの参照] ボタンを非表示にするために使用されます。このフィルタを利用することで、フィールドブラウザの表示を制御し、特定の場面で不要な機能を隠すことができます。
このフィルタは以下のようなシナリオでよく使用されます:
- カスタムフィールドのユーザーインターフェースをシンプルにしたい場合
- 特定のフィールドタイプを隠しておきたい場合
- ユーザーによるフィールドの手動入力を防ぎたい場合
- 特定の条件が満たされていない場合にフィールドを隠す必要がある場合
- プラグインの設定に応じてフィールドオプションを制御したい場合
- フロントエンドでのフィールドの使用を制限したい場合
構文
add_filter('acf/field_group/enable_field_browser', 'your_custom_function');
パラメータ
$value(bool): デフォルトはtrue。フィールドブラウザを表示するかどうか。
戻り値
- bool: フィールドブラウザを有効にするかどうか。
対応バージョン
- ACFバージョン: 5.0.0以降
- WordPressバージョン: 4.0以降
サンプルコード
サンプルコード1
add_filter('acf/field_group/enable_field_browser', '__return_false');
このコードはフィールドブラウザ機能を無効化し、[フィールドの参照] ボタンを表示しないようにします。
サンプルコード2
add_filter('acf/field_group/enable_field_browser', function($value) {
return !is_admin();
});
このコードは管理画面以外でのみフィールドブラウザを有効にします。管理画面ではボタンが表示されません。
サンプルコード3
add_filter('acf/field_group/enable_field_browser', function($value) {
return (current_user_can('administrator')) ? true : false;
});
このサンプルでは、管理者ユーザーだけがフィールドブラウザを使用できるように設定しています。
サンプルコード4
add_filter('acf/field_group/enable_field_browser', function($value) {
return (get_option('disable_field_browser') === 'yes') ? false : true;
});
このコードはオプション設定に基づいてフィールドブラウザの表示を制御します。特定のオプションが有効な場合は非表示になります。
サンプルコード5
add_filter('acf/field_group/enable_field_browser', function($value) {
return (is_page('contact')) ? false : true;
});
このコードは「contact」ページではフィールドブラウザを非表示にし、それ以外のページでは表示します。
この関数のアクションでの使用可能性
| アクション | 使用可能 |
|---|---|
| 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 |