久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

WordPress中文章ID不連續問題如何解決

256次閱讀
沒有評論

共計 2346 個字符,預計需要花費 6 分鐘才能閱讀完成。

這篇文章主要講解了“WordPress 中文章 ID 不連續問題如何解決”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著丸趣 TV 小編的思路慢慢深入,一起來研究和學習“WordPress 中文章 ID 不連續問題如何解決”吧!

一、禁用文章修訂版

所謂的文章修訂版就是你每次修改一次文章,它都會自動幫你保存修改之前的文章版本,專業術語叫做版本控制,這樣保證了在誤修改的情況下可以還原之前的內容,這個在維基文檔的維護方面是有很大幫助的,但是作為我們的小博客,似乎沒多大用處,而且這個修訂版在數據庫中是占據一個 ID 的,這也是導致文章 ID 不連續的問題之一。要想禁用文章修訂版,可以在 wp-config.php 文件中添加:

define(WP_POST_REVISIONS , false);

也可以在當前主題的 functions.php 添加以下 PHP 代碼:

// 禁用修訂版本,2015 年 3 月 5 日更新 
add_filter(wp_revisions_to_keep , specs_wp_revisions_to_keep , 10, 2);
function specs_wp_revisions_to_keep($num, $post) {
  if (post_type == $post- post_type)
     $num = 0;

  return $num;
}

二、刪除文章修訂版

禁用了文章修訂版之后,數據庫中還是保存著之前已經創建的文章修訂版,這些其實已經沒多大用處,而且占著 ID,我們可以將它刪除。至于怎么刪除,可以在 phpmyadmin 中執行以下 SQL 語句(會影響置頂文章,慎用!并做好備份):

DELETE a,b,c
FROM wp_posts a
LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id)
LEFT JOIN wp_postmeta c ON (a.ID = c.post_id)
WHERE a.post_type = revision

三、刪除不必要的附件

相信很多博友在發布文章都會同時上傳 / 插入一些附件,如圖像、視頻、音樂等,這些附件可以在 WordPress 管理后臺 – 媒體庫中看到,不同媒體對應了不同的文章。可是你要注意的是這些媒體也是占據著文章 ID 的,它們與文章都保存在同一個數據庫表 wp_posts 中。如果你特別追求文章的 ID 一定要完美無缺地連續,請不要在發布文章的時候上傳 / 插入這些媒體,并請在 WordPress 管理后臺 – 媒體庫中,刪除之前上傳的媒體(注意這個操作不只是刪除記錄,而且會刪除你上傳的文件),需要的話請用 FTP 重新上傳這些文件。

四、禁用自動保存

自動保存的好處是你在編輯文章的時候,每隔一小段時間系統會自動幫你保存編輯的文章,防止網頁突然關閉,導致之前寫的幾千字嘩啦一下全沒了。缺點是每篇都文章都會有一個自動保存的記錄,同樣占據一個文章 ID,也是文章 ID 不連續的原因之一,如果你不需要這個功能,可以在當前主題的 functions.php 中添加以下代碼:

// 禁用自動保存,所以編輯長文章前請注意手動保存。
add_action(admin_print_scripts , create_function( $a , wp_deregister_script( autosave) );

五、重新排列不連續的文章 ID

方法一:可在當前主題的 functions.php 中加入以下 PHP 代碼,這樣如果你只是單純發文章,不發頁面,不添加菜單,不上傳媒體的話,基本上此后的文章 ID 是連續的,而且不改變之前已經發布的文章 ID,不影響 SEO:

// WordPress 3.8 測試有效 
function keep_id_continuous(){
 global $wpdb;

 // 刪掉自動草稿和修訂版
 $wpdb- query(DELETE FROM `$wpdb- posts` WHERE `post_status` = auto-draft OR `post_type` = revision

 // 自增值小于現有最大 ID,MySQL 會自動設置正確的自增值
 $wpdb- query(ALTER TABLE `$wpdb- posts` AUTO_INCREMENT = 1  
}

add_filter(load-post-new.php , keep_id_continuous
add_filter(load-media-new.php , keep_id_continuous
add_filter(load-nav-menus.php , keep_id_continuous

如果你使用了置頂文章、菜單和父子頁面等功能,下面的方法失效:

方法二:完成以上幾步,基本上可以保證以后發布的文章 ID 都會是連續的了,但是之前已經發布的文章 ID 還是一片混亂,得把他們重新排列,以保證是 ID 是連續的。我寫了一個 PHP 腳本,你可以通過以下網址下載,下載后用文本編輯器打開,根據開頭的說明修改數據庫信息,然后將該 PHP 文件上傳至你的博客空間,運行一下看到 OK 就可以了,你可以到 phpmyadmin 中查看 wp_posts 表中的 id 是不是連續的了。還是那句話,開始之前請先備份你的數據庫。(如果你使用了 post id 作為固定鏈接,那么將可能改變所有文章的網址,會影響搜索引擎收錄;如果你用的插件建立了新的數據庫表,如投票插件等,也將會出現問題;如果你的博客中創建了父子關系的頁面,運行了以下腳本將會失去此關系。請慎用!)

感謝各位的閱讀,以上就是“WordPress 中文章 ID 不連續問題如何解決”的內容了,經過本文的學習后,相信大家對 WordPress 中文章 ID 不連續問題如何解決這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是丸趣 TV,丸趣 TV 小編將為大家推送更多相關知識點的文章,歡迎關注!

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-07-12發表,共計2346字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 修武县| 石门县| 株洲县| 南投县| 同仁县| 临泉县| 龙游县| 托里县| 马山县| 和田市| 宁南县| 正蓝旗| 甘泉县| 建阳市| 松桃| 辉县市| 微博| 新晃| 云浮市| 延川县| 浦江县| 阳东县| 华宁县| 阜新市| 宁德市| 兴宁市| 西昌市| 南康市| 弋阳县| 凤山县| 新建县| 友谊县| 徐汇区| 繁峙县| 长治县| 班玛县| 绵竹市| 泰宁县| 景宁| 平度市| 屯昌县|