WordPress文章如何禁止自動保存草稿/禁用修訂版本?

WordPress的自動保存、自動草稿和修訂版本功能,一直受到網絡營銷人員的批評。

不過,WordPress是世界上最受歡迎的網站程序:

  • WordPress功能非常強大;
  • 再加上無限的可擴展性;
  • 所以WordPress在個人和企業客戶中,非常受歡迎。

WordPress自動保存功能有什麼用?

WordPress自動保存可防止編輯器意外關閉並導致文章內容丟失。

  • 例如,網絡突然斷開連接,突然斷電等等……
  • 編輯文章很困難,並且文章已經消失……
  • 此刻,是非常意外的!

但是,此功能可能會導致數據庫膨脹,並無緣無故地添加大量無用的垃圾。

幸運的是,有一個WordPress外掛Easy WP Cleaner” 可以刪除這些垃圾。

問題就在於這種“減肥過程”非常痛苦,本文會分享解決此問題的最好方法。

WordPress文章如何禁止自動保存草稿/禁用修訂版本?

WordPress自動保存和自動草稿有何不同?

WordPress的另一個非常煩人的功能是自動草稿。

  • 自動草稿與自動保存類似,自動保存就是你撰寫文章的時候。
  • 文章會根據時間間隔,自動備份並寫入數據庫。
  • 單擊“寫文章”時自動草稿是新的。

即使你退出編輯器,數據也會寫入數據庫,無論你是否鍵入數據。

WordPress修訂版本功能有何用處?

實際上WordPress的修訂版本功能非常有用,用戶可以檢查更改並執行版本控制。

事情總是有兩面性,就像自動保存功能一樣,忽略這些變化會給數據庫帶來不必要的負擔。

  • 如果編輯長文章時,寫了大段內容,記得手動點擊保存。
  • 或是電腦用記事本軟件,先編輯好後復製到WordPress編輯裡再發布(能有效避免在文章輸入數據庫的過程中,出現數據丟失的情況)。

修改WordPress配置文件(方法1 推薦)

其實WordPress中有很多隱藏的功能,可以通過在WordPress安裝根目錄的wp-config.php文件的功能,根據需求進行配置禁用或啟用。

不少使用WordPress建立站的朋友,都想禁用WordPress自動草稿,而不是自動保存。

以下代碼解決了這個問題。

由於WordPress的機制,無法完全禁用自動保存,但你可以通過設置較長的時間間隔,來實現類似的效果,例如▼

define( 'AUTOSAVE_INTERVAL', 3600 ); // 默认是 60,3600秒表示自动保存间隔1小时

設置WordPress修訂版本最多允許幾個?

// WordPress设置自动保存间隔/秒
define('AUTOSAVE_INTERVAL', 3600);
// WordPress设置修订版本最多允许几个
define('WP_POST_REVISIONS', 3);

你可以將以下定義,添加到你的WordPress 站點的 wp-config.php 文件中▼

define( 'AUTOSAVE_INTERVAL', 3600 ); // 3600秒表示自动保存间隔1小时
define( 'EMPTY_TRASH_DAYS', 7 ); // 在 7 天后被删除
define( 'DISABLE_WP_CRON', true ); // 禁用内部Wp-Cron函数
define('WP_POST_REVISIONS', false ); // 禁用文章修订版本
  • 自動草稿在7 天未使用後會自動刪除。
  • 它們基本上是自動功能清理的,無需擔心它們。
  • 測試過設置為 define( 'AUTOSAVE_INTERVAL', 86400 ); 自動保存間隔24小時無法生效。
  • 建議設置自動保存間隔為3600(1小時)。

    禁用WordPress修訂版本(方法2)

    如果方法1的禁用文章修訂版本無效,需要使用以下WordPress禁用所有文章類型的修訂版本的代碼。

    請在WordPress主題模板文件functions.php中,添加以下禁用文章修訂版本代碼▼

    // WordPress禁用所有文章类型的修订版本
    add_filter( 'wp_revisions_to_keep', 'cwl_wp_revisions_to_keep', 10, 2 );
    function cwl_wp_revisions_to_keep( $num, $post ) { return 0;}

    WordPress禁用某種文章類型的修訂版本的代碼▼

    // WordPress禁用某种文章类型的修订版本
    add_filter( 'wp_revisions_to_keep', 'cwl_wp_revisions_to_keep', 10, 2 );
    function cwl_wp_revisions_to_keep( $num, $post ) {
    if ( 'post_type' == $post->post_type ) { //引号中post_type改为你想禁用修订版本的文章类型
    return 0;
    }
    return $num;
    }

    至於WordPress自動草稿,你無法禁用它們,有個重要的原因。

    Audrey Capital(Matt Mullenweg 的天使投資公司)的技術忍者Samuel 'Otto' Wood說:

    之所以存在自動草稿,是因為多個用戶可以同時創建新帖子。如果兩個人幾乎在同一時間進入post-new,然後他們的第一次自動保存幾乎同時發生,那麼就會出現競爭條件,可能導致其中一個人取回錯誤的帖子ID,這將導致帖子被覆蓋/丟失,當他們繼續編輯帖子時。

    自動草稿會在顯示編輯屏幕之前創建帖子並獲取新帖子的ID,從而防止兩個同時作者在瀏覽器的數據中意外地擁有相同的帖子ID。

    負責WordPress 的TinyMCE 集成的Andrew Ozz說:

    這也使得在保存第一個草稿之前上傳圖像成為可能,並且它們將準確地附加到新帖子中。

    對於使用帶有古騰堡編輯器的WordPress 5.0+ 版本的人,下面的代碼片段可以禁用自動草稿/保存▼

    /**
     * 禁用古腾堡编辑器自动保存 (间隔 3600秒)
     */
    add_filter( 'block_editor_settings', 'cwl_block_editor_settings', 10, 2 );
    function cwl_block_editor_settings( $editor_settings, $post ) {
        $editor_settings['autosaveInterval'] = 3600;
        return $editor_settings;
    }

     

    希望陳溈亮博客( https://www.chenweiliang.com/ ) 分享的《WordPress文章如何禁止自動保存草稿/禁用修訂版本? 》,對您有幫助。

    歡迎分享本文鏈接:https://www.chenweiliang.com/cwl-1580.html

    歡迎加入陳溈亮博客的Telegram 頻道,獲取最新更新!

    🔔 率先在頻道置頂目錄獲取寶貴的《ChatGPT 內容行銷AI 工具使用指南》! 🌟
    📚 這份指南蘊含價值巨大,🌟難逢的機遇,切勿錯失良機! ⏰⌛💨
    喜歡就分享和按贊!
    您的分享和按贊,是我們持續的動力!

     

    發表評論

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    滾動到頂部