如何删除“自定义字段”菜单?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何删除“自定义字段”菜单?相关的知识,希望对你有一定的参考价值。

我使用Advanced Custom Fields插件,但是我想删除菜单Custom Fields

enter image description here

代码如下:

add_filter('admin_menu', function() 
    remove_menu_page('edit.php?post_type=acf');
);

但是它不起作用。有什么问题,还是有人知道解决我问题的方法?

答案

您能否在主题功能.php文件中添加此功能

function remove_menus()
   remove_menu_page( 'edit.php?post_type=acf' ); //Remove Post Type ACF

add_action( 'admin_init', 'remove_menus' );
另一答案

这是我用于隐藏“自定义字段”菜单的功能。它允许您指定仍应能够看到菜单的用户ID。

// hide ACF menus for all users except those specified
function show_hide_acf_menu( $show ) 

    // array of user IDs that are allowed to see ACF menu
    $allowedUsers = array(1);

    // get the current user's ID
    $userID = get_current_user_id();

    if (in_array($userID, $allowedUsers)) 
        return true;
     else 
        return false;
    

add_filter('acf/settings/show_admin', 'show_hide_acf_menu');
另一答案

这是我用来通过用户名限制菜单的逻辑。

/**
 * Hide ACF admin menu from non-approved users.
 */
function wpgood_restrict_acf_menu( $show ) 
    // array of user names that are allowed to see ACF menu
    $allowedUsers = array(
        'YOUR USER NAME HERE',
        'ANOTHER APPROVED USER NAME HERE'
    );
    // get the current user
    $current_user = wp_get_current_user();
    $current_user_name = $current_user->user_login;
    if (in_array($current_user_name, $allowedUsers)) 
        return true;
     else 
        return false;
    

add_filter('acf/settings/show_admin', 'wpgood_restrict_acf_menu');
另一答案

Mukesh Panchal,他的回答不再有效。他们改名为:

remove_menu_page( 'edit.php?post_type=acf-field-group' )

这将解决问题。

另一答案

有一种简单的方法。您可以隐藏特定环境的ACF菜单,在wp-config.php中设置CONST。

将其放入您的function.php中:

/*
* Hide acf from the wp=admin area.
*/
function awesome_acf_hide_acf_admin() 
    if (SHOW_ACF == 1) return true;
    return false;

add_filter('acf/settings/show_admin', 'awesome_acf_hide_acf_admin');

并在您的wp-config.php中定义此CONST:

define( 'SHOW_ACF', true );

例如,如果您想在实时站点中隐藏acf菜单,则可以更改此CONST的值:

define( 'SHOW_ACF', false );

希望对您有所帮助!

以上是关于如何删除“自定义字段”菜单?的主要内容,如果未能解决你的问题,请参考以下文章

如何在主页和类别菜单中隐藏Joomla自定义字段?

给wordpress后台侧栏菜单添加自定义字段的方法

如何在 AspNetCore.Identity 上删除基本字段并添加自定义字段?

在 Wordpress 中使用 ACF(高级自定义字段)显示自定义帖子标题的下拉菜单

php 将自定义字段内容添加到菜单项

php 从菜单中获取自定义字段的功能