如何防止作者在WordPress中删除帖子

默认情况下,具有作者用户角色的用户可以删除他们自己的帖子,即使这些帖子已经发布。 如果您运行多作者博客,那么您可能希望阻止作者在发布后专门删除自己的帖子。 在本文中,我们将向您展示如何轻松地防止作者在WordPress中删除自己的帖子。

如何防止作者在WordPress中删除帖子

为什么要阻止作者在WordPress中删除自己的帖子

WordPress提供了强大的用户角色管理系统。 您的WordPress网站上的每个注册用户都分配有一个用户角色,并且每个用户角色都具有不同的权限。

具有“作者”角色的用户可以撰写帖子并将其发布到您的网站上。 这个角色通常由多作者WordPress博客使用。

作者也可以删除自己的帖子,包括已经发布的帖子。 作为网站所有者,您可能想阻止作者这样做。 最简单的方法是修改WordPress的作者用户角色并修改权限。

让我们来看看如何轻松地防止作者删除自己的帖子。

方法1:防止作者使用插件删除帖子

这种方法更容易,并推荐给所有用户。

首先您需要安装并激活Capability Manager增强插件。 更多细节

激活后,您需要访问 用户»功能 页。 在这里,您可以加载任何WordPress用户角色并更改其功能和权限。

用户角色和功能管理器

您需要首先找到右栏中的“选择查看/编辑角色”框,然后从下拉菜单中选择“作者”用户角色。 之后,您需要点击“加载”按钮来加载作者用户角色功能。

加载作者用户角色

该插件现在将加载“作者”用户角色功能。 在删除功能部分下,您需要取消选中删除和删除已发布选项旁边的复选框。

之后,您可以转到页面底部并点击保存更改按钮来存储您的设置。

现在,拥有作者用户角色的用户将不再能够删除WordPress网站上的任何帖子。

回授权

用户角色功能是明确定义的。 这意味着一旦从用户角色中移除了某个功能,除非您再次明确定义它,否则它将不会返回。 即使您卸载了插件,您所做的功能更改也不会自动恢复。

如果您想要授予作者删除权限,则必须重复此过程并选中删除和删除已发布帖子选项旁边的复选框。

如果你想卸载插件并恢复到默认的WordPress功能,那么首先你需要访问 工具»能力经理 页面,然后点击“重置为WordPress默认值”链接。

重置用户角色权限

方法2:手动防止作者删除自己的帖子

这种方法需要你添加代码到你的WordPress文件。 如果您之前没有这样做,那么请参阅我们的指南,了解如何在WordPress中复制和粘贴代码。

您将需要添加以下代码到您的主题的functions.php文件或特定于站点的插件。

函数wpb_change_author_role(){
 全球$ wp_roles;
 $ wp_roles-> remove_cap('author','delete_posts');
 $ wp_roles-> remove_cap('author','delete_published_posts');

 }
 add_action('init','wpb_change_author_role'); 

此代码更改作者用户角色,并删除他们删除自己的帖子的能力。

如果你想恢复权限,那么简单地删除代码将不会做任何改变。 您将需要通过用以下代码替换第一个代码片段来显式重新定义已删除的功能:

函数wpb_change_author_role(){
 全球$ wp_roles;
 $ wp_roles-> add_cap('author','delete_posts');
 $ wp_roles-> add_cap('author','delete_published_posts');

 }
 add_action('init','wpb_change_author_role');