如何在Wordpress管理员中为特定页面禁用删除选项?

时间:2018-08-29 05:35:18

标签: php wordpress function custom-wordpress-pages wordpress-admin

我发现了很多这样的问题,但与我的要求不符,这里的要求是锁定名为设置的特定页面。不能被其他人删除,但是应该可以编辑。有什么方法可以使用页面ID或名称来锁定特定页面。

1 个答案:

答案 0 :(得分:1)

如下所示在主题功能文件中创建一个钩子:

function restrict_page_deletion($post_ID){
    $user = get_current_user_id();

    $restricted_pageId = 4;

    if($post_ID == $restricted_pageId)
    {
        echo "You are not authorized to delete this page.";
        exit;
    }
}
add_action('before_delete_post', 'restrict_page_deletion', 10, 1);

将您的页面ID传递给strict_pageId变量。

如果要为多个页面实现此功能,请使用数组代替变量。

管理员可以将页面移至回收站,但管理员无法删除它。

如果您想阻止管理员使用trach功能,请在“ wp_trash_post”操作上调用钩子。

add_action('wp_trash_post', 'restrict_page_deletion', 10, 1);