如何使我的自定义 WordPress 元框仅对管理员可见?

发布于 2024-11-09 15:14:28 字数 126 浏览 0 评论 0原文

我正在使用 functions.php 在 WordPress 管理区域的帖子页面上添加自定义元框。但是,我需要使其仅对管理员可见,而不是编辑者、贡献者等可见。

我该怎么做才能使其仅对管理员可见?

I am using my functions.php to add a custom meta box on my posts page in the WordPress Admin Area. However, I need to make it so its only visible to admins, and not editors, contributors, etc.

What would I do to make it visible to admins only?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

神回复 2024-11-16 15:14:28
function your_function() {
    global $current_user;
    if($current_user->roles[0] == 'administrator') {
        add_meta_box(your parameters);
        // fill in your parameters
    }
}
add_action('admin_init','your_function');
function your_function() {
    global $current_user;
    if($current_user->roles[0] == 'administrator') {
        add_meta_box(your parameters);
        // fill in your parameters
    }
}
add_action('admin_init','your_function');
心凉 2024-11-16 15:14:28
if ( is_user_logged_in() ) {
    get_currentuserinfo();
    # check if current user is admin
    if ( $current_user->wp_user_level >= 10 ) {
        # put your admin-only function here
    }
}
if ( is_user_logged_in() ) {
    get_currentuserinfo();
    # check if current user is admin
    if ( $current_user->wp_user_level >= 10 ) {
        # put your admin-only function here
    }
}
最初的梦 2024-11-16 15:14:28

此代码片段适用于自定义分类法。假设没有其他角色具有 update_core 功能,它会删除/隐藏所有非管理员的自定义分类元框。类似,但与@johannes-pille的答案相反

function remove_tax_metaboxes() {
    if (!current_user_can('update_core')) {
        remove_meta_box( 'taxdiv', 'post', 'side' );
    }
}
add_action( 'do_meta_boxes', 'remove_tax_metaboxes' );

请注意,remove_meta_box的第三个参数可能不同,请参阅https://codex.wordpress.org/Function_Reference/remove_meta_box

This snippet works for custom taxonomies. It removes / hides a custom taxonomy meta box for all non-admins, assuming no other role has the update_core capability. Similar, but opposite of the answer by @johannes-pille

function remove_tax_metaboxes() {
    if (!current_user_can('update_core')) {
        remove_meta_box( 'taxdiv', 'post', 'side' );
    }
}
add_action( 'do_meta_boxes', 'remove_tax_metaboxes' );

Note that the third argument of remove_meta_box may differ, see https://codex.wordpress.org/Function_Reference/remove_meta_box

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文