如何防止作者在 WordPress 中刪除文章

03/20/2024

如何防止作者在 WordPress 中刪除文章

管理擁有多位作者的 WordPress 網站時,確保重要內容不被意外刪除是一項挑戰。無論你運行的是博客、新聞網站還是任何多作者平台,防止文章意外或故意刪除都是至關重要的。然而,預設情況下,WordPress 允許作者刪除他們自己的文章,即使這些文章已經發表。

在本文中,我們將向你展示如何輕鬆地防止作者在 WordPress 中刪除他們自己的文章。這將使你能夠提高網站的安全性並保持對內容的完全控制。

為什麼要防止作者在 WordPress 中刪除文章?

WordPress 擁有一個強大的用戶角色管理系統。每個註冊的用戶都被分配了一個具有不同許可權的用戶角色。具有 ‘作者’ 角色的用戶可以在網站上撰寫並發表文章。這個角色通常用於多作者 WordPress 博客。作者還可以刪除他們自己的文章,包括那些已經發表的。

然而,作為網站所有者,你可能希望防止作者這樣做,以防止文章被意外刪除或控制發佈和刪除的內容。最簡單的方法是修改作者用戶角色並更改其在 WordPress 中的許可權。讓我們看看如何輕鬆地防止作者刪除自己的文章。

方法 1:使用插件防止作者刪除文章

如果你正在尋找簡單的方法來防止作者刪除文章,那麼這種方法適合你。首先,你需要安裝並啟用 PublishPress Capabilities 插件。有關更多詳細信息,請參閱我們的逐步指南:如何安裝 WordPress 插件

啟用後,從 WordPress 管理側欄進入 Capabilities » Capabilities 頁面。在那裡,從螢幕左上角的角色能力下拉選單中選擇 ‘作者’ 選項。

接著,切換到螢幕左欄的 ‘刪除’ 標籤。之後,只需取消勾選 ‘刪除’ 和 ‘刪除已發表’ 選項。最後,點擊 ‘保存更改’ 按鈕來保存你的設置。

現在,你網站上的作者將無法刪除他們的文章,即使那些已經發表了也不行。

還原許可權

用戶角色的能力是明確定義的。這意味著一旦你從用戶角色中刪除某個能力,它將不會自動恢復,即使你卸載了插件。如果你想恢復作者的刪除許可權,你需要重複該過程並勾選刪除和刪除已發表文章選項。如果你想卸載插件並恢復到 WordPress 的默認能力,你首先需要訪問管理面板中的 Capabilities » Backup 頁面。從這裡切換到 ‘重置角色’ 標籤,然後點擊 ‘重置為 WordPress 默認’ 按鈕。現在,所有修改過的角色定義都將被刪除,你的 WordPress 用戶角色將恢復到其原始能力。

方法 2:使用 WPCode 防止作者刪除文章

如果你想使用自定義代碼來防止作者刪除文章,那麼這種方法適合你。你可以輕鬆地將自定義代碼添加到主題的 functions.php 文件中,但要注意,一個小的錯誤可能會破壞你的网站。

因此,我們建議使用 WPCode 來在你的 WordPress 網站上添加自定義代碼。首先,安裝並啟用 WPCode 插件。啟用後,從 WordPress 管理側欄進入 Code Snippets » + Add Snippet 頁面。點擊 ‘Use Snippet’ 按鈕,選擇 ‘PHP Snippet’ 選項。在 ‘Code Preview’ 框中複製並粘貼以下代碼:

function wpb_change_author_role(){
  global $wp_roles;
  $wp_roles->remove_cap( 'author', 'delete_posts' );
  $wp_roles->remove_cap( 'author', 'delete_published_posts' );
}
add_action('init', 'wpb_change_author_role');

然後,滾動到 ‘Insertion’ 部分,選擇 ‘Auto Insert’ 模式。你的代碼將在激活後自動執行。最後,切換頁面頂部右上角的開關為 ‘Active’,並點擊 ‘Save Snippet’ 按鈕以在你的 WordPress 網站上保存並執行代碼。

使用 WPCode 還原許可權

如果你想再次為作者提供刪除文章的能力,你可以使用 WPCode 來做到這一點。首先,訪問 Code Snippets 頁面並將你創建的代碼片段開關切換為 ‘Inactive’。但僅僅停用該代碼是不夠的,你現在需要在網站上添加新的代碼片段。在 ‘Create Custom Snippet’ 頁面中,輸入代碼片段的名稱,選擇 ‘PHP Snippet’ 作為代碼類型,並複製以下代碼:

function wpb_change_author_role(){
  global $wp_roles;
  $wp_roles->add_cap( 'author', 'delete_posts' );
  $wp_roles->add_cap( 'author', 'delete_published_posts' );
}
add_action('init', 'wpb_change_author_role');

滾動到 ‘Insertion’ 部分,選擇 ‘Auto Insert’ 模式。這段代碼將在激活後自動為作者添加刪除能力。切換頁面頂部右上角的開關為 ‘Active’,並點擊 ‘Save Snippet’ 按鈕。現在,你的作者將能夠刪除他們自己的文章。

額外提示:將作者限制為其自身的文章

除了防止作者刪除文章外,你還可以在 WordPress 中將作者限制為他們自己的文章。這樣,作者將只能編輯、預覽和發布他們自己撰寫的文章。如果你運行一個多作者博客或允許客座文章,這將非常有幫助。你可以使用 PublishPress Permissions 來實現這一點。啟用後,該插件將自動限制作者和編輯者,使他們在 WordPress 管理區域中只能看到自己的文章。

我們希望這篇文章能幫助你了解如何防止作者在 WordPress 中刪除他們自己的文章。你可能還想看看我們的 初學者的終極 WordPress 安全指南 和我們的 最佳 WordPress 主題推薦



Related Posts

  • 2025-01-31
  • WordPress 插件

通知评论者他们的评论已获批准是在您的网站上鼓励对话的简单而有效的方法。然而,WordPress 默认情况下不会在评论发布时通知用户,这可能导致他们对评论的状态感到困惑。有许多网站拥有者问我们如何解决此问题,因此我们编写了这篇指南来帮助您!在这篇文章中,我们将展示如何轻松通知用户他们的评论已在 WordPress 中被批准,以保持互动积极并吸引更多观众参与。

閱讀更多
  • 2025-01-31
  • WordPress 插件

想知道我们在 WPressize Me 如何通过添加标题属性和 nofollow 标签来改善用户体验和SEO吗?默认的 WordPress 编辑器并不容易提供这些选项。本文将为您简要介绍如何在 WordPress 的插入链接弹出窗口中为链接添加标题和 nofollow 属性选项,以便简化工作流程和提升您的SEO努力。

閱讀更多
  • 2025-01-28
  • WordPress 插件

你是否想在你的WordPress网站上启用Imagick?大多数情况,WordPress会自动使用Imagick来管理所有网站的图像。然而,通过调整默认的Imagick设置,你可以提高网站性能或向访客展示更高质量的图像。在本文中,我们将展示如何在你的WordPress网站上启用Imagick,并自定义其设置以改善访客体验。

閱讀更多

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}
>