1. 程式人生 > >[WP]如何禁止WP自動儲存,刪除已經儲存的Revision版本

[WP]如何禁止WP自動儲存,刪除已經儲存的Revision版本

用WP系統的朋友都很清楚,WP為了防止網頁意外關閉,網路意外中斷,從而會失去剛剛寫的文章,所以就有一個預設的1分鐘自動儲存一次文章。本來這個自動儲存思路挺好的,但是由於儲存的頻率太快,所以導致產生了很多廢棄的東西,特別是在靜態化之後,文章ID會不連續,WP任何一次文章儲存,圖片上傳都會佔用一個ID,導致我們看著很不爽,所以適當的放寬這個條件是很有必要的。

下面介紹幾種修改方法!

1.無敵的外掛法(WP的一大優良特色)

如何刪除自動儲存導致的revision版本?

Revision是wordpress2.6版之後加入的自動儲存日誌功能,它在編輯、修改文章時候會每隔一段時間就將日誌儲存一次草稿,這個功能有利於儲存日誌的資料,避免了資料的丟失,尤其是在文章有一定長度的狀況下。但是每修改一次日誌,就會增加一個revision,如果您修改的次數多了,又或者是時間較長,自動儲存就會有好幾個版本,有些甚至上十,當你的日誌有一定數量後,整體的修改版本數量就是一個很可怕的數量了。

刪除這些冗餘revision,對提高SQL語句執行速度,提升WP執行速度有很大的好處。當然了,如果你是一個數據庫高手,你大可以執行簡單的資料命令就能輕鬆刪除這些多餘的revision。可是,一般的部落格使用者,並不瞭解資料庫的操作,更甚的,由於擔心資料丟失可能連碰都不敢碰。所以,如果有一個外掛,能夠通過滑鼠一鍵刪除資料庫中的Revision,那實在太方便了,而這個外掛就是Delete-revision。

Delete-Revision外掛

Requires: 2.7.X or higher
Compatible up to: 1.3.1
Last Updated: 2009-6-30
Downloads: 

47,739

看到了吧,這麼多次下載量,你可以放心的使用。安裝方法很簡單,去後臺搜尋外掛並安裝啟用就可以了。

如何禁止WP自動儲存?

請儘量不要自己加程式碼禁止儲存,因為在wp不斷的升級中,會導致檔案覆蓋的。推薦老外寫的一個禁用wordpress自動儲存的外掛,是一個很穩定的修改方法,啟用這個外掛後,無論wordpress如何升級,外掛都可正常工作,徹底關閉了自動儲存的功能。

安裝的方法很簡單,解壓檔案後將disable-autosave.php放到plugins目錄下,然後再後臺啟用即可,不需要任何設定。

禁用WordPress自動儲存的外掛下載地址:網盤1 || 網盤2

2.萬能的程式碼法

方法1:開啟部落格根目錄下的wp-config.php文 件,搜尋“require_once(ABSPATH . ‘wp-settings.php’);”在其前面新增如下程式碼:

//自動儲存10小時一次
define('AUTOSAVE_INTERVAL', 36000);
//取消自動修訂版
define('WP_POST_REVISIONS',false);

方法2:程式碼來源於國外網站,使用環境:WordPress 3.3.1,原理上 3.0 以上都支援。在我們當前使用主題的 functions.php 檔案加入如下程式碼即可:

/* 取消自動儲存和修訂版本 */
remove_action('pre_post_update', 'wp_save_post_revision');
add_action('wp_print_scripts', 'disable_autosave');
function disable_autosave() {
wp_deregister_script('autosave');
}

清理資料庫中以前的文章歷史修訂版本

自動儲存和修訂版本我們都解決了,接下來我們進行刪除資料庫中的冗餘文章和修訂版本,資料庫操作之前大蔥建議大家先進行備份。我們登入 phpmyadmin 中進行資料庫管理,SQL語句命令列中寫入以下執行程式碼執行(如果更改了資料庫表名的字首,需要將資料表名稱中wp改成你的字首):

delete from wp_posts where post_type='revision';

我是使用的是方法1的程式碼,歡迎大家測試。你也看到了,加入程式碼之後,這篇是1310,上一篇是1309,是不是連續的了?