如何在WP-admin UI中隐藏高级自定义字段(ACF)()

查看下面的截图;我要做的就是在wordpress后端中为自定义用户隐藏某些ACF字段。

如何在WP-admin UI中隐藏高级自定义字段(ACF)()

文章图片
#1 【如何在WP-admin UI中隐藏高级自定义字段(ACF)()】如果要用CSS隐藏它, 则应在自定义页脚区域插入自定义CSS。例如, 你可以将此类代码添加到主题的functions.php文件中:
add_action('admin_footer', 'my_admin_hide_cf'); function my_admin_hide_cf() { $u=wp_get_current_user(); $user_roles = $u-> roles; if ($user_roles[0]=='CUSTOM_USER_ROLE_NAME'){ echo ' < style> #acf-FIELD_SLUG_HERE {display:none} < /style> '; } }

当然, 你应该用正确的值替换FIELD_SLUG_HERE和CUSTOM_USER_ROLE_NAME的值。 F.e. #acf-FIELD_SLUG_HERE可以是#acf-url, CUSTOM_USER_ROLE_NAME可以是” 贡献者” 。
#2 从ACF 5.0.0开始, 没有输出CSS的简便方法。如果使用acf / prepare_field挂钩并返回false, 则该字段将不会呈现。
< ?php function so37111468_hide_field( $field ) {// hide the field if the current user is not able to save options within the admin if ( ! current_user_can( 'manage_options' ) ) { return false; }return $field; }add_filter( 'acf/prepare_field/key=MYFIELDKEY', 'so37111468_hide_field' ); ?>

可以在以下位置找到该过滤器的文档:https://www.advancedcustomfields.com/resources/acf-prepare_field/

    推荐阅读