【整理分享】WordPress批量修改文章信息的方法詳解

wordpress如何批量修改文章信息?下面本篇文章給大家介紹一下WordPress批量修改文章內(nèi)容、摘要、作者、所有評(píng)論、敏感詞匯等信息,希望對(duì)大家有所幫助!

【整理分享】WordPress批量修改文章信息的方法詳解

你是否遇到過如下幾種狀況:

  • 博客更換域名,博客文章的內(nèi)容也要跟著換
  • 使用的圖片地址更換了
  • 寫了很多文章,回過頭來想切換作者
  • 想刪除某個(gè)可惡留言者的所有留言
  • 想更改某個(gè)留言者所有留言的網(wǎng)站URL
  • 想要禁用所有文章的pingback
  • 想要禁用所有文章的評(píng)論功能

所有的這些,都涉及到一個(gè)關(guān)鍵詞:批量修改。如果在WordPress后臺(tái),手動(dòng)地去一個(gè)一個(gè)修改文章內(nèi)容,相信會(huì)讓你很抓狂,對(duì)一些擁有上千篇文章的博客來說,幾乎是不可能完成任務(wù)。本文將教你如何使用sql語句來操作你的數(shù)據(jù)庫,實(shí)現(xiàn)數(shù)據(jù)的批量修改。

如果你沒學(xué)過數(shù)據(jù)庫的相關(guān)知識(shí),肯定不知道SQL是什么,但是本文所涉及到的內(nèi)容不需要你了解數(shù)據(jù)庫的知識(shí),也不需要你精通SQL語句的編寫,你完全可以直接使用本文提到的SQL,下面我們將分條介紹各個(gè)SQL語句的功能,所有語句都使用默認(rèn)的 wp_ 表前綴,如果你的不是,請(qǐng)自行更改。

開始之前,先介紹以下如何執(zhí)行SQL語句,進(jìn)行批量操作?,F(xiàn)在一般的空間都是用phpMyAdmin來管理數(shù)據(jù)庫,這里將以phpmyadmin為例來介紹如何執(zhí)行SQL語句:

  • 進(jìn)入你的phpmyadmin管理頁面,然后進(jìn)入你的博客對(duì)應(yīng)的數(shù)據(jù)庫

  • 菜單欄有個(gè) SQL 選項(xiàng),點(diǎn)擊進(jìn)去

  • 出現(xiàn)一個(gè)SQL語句的輸入框,現(xiàn)在你就可以在里面輸入SQL語句了

  • 輸入完畢,點(diǎn)擊 執(zhí)行 ,將執(zhí)行你剛才輸入的SQL語句

  • SQL語句執(zhí)行完畢,你的文章也被批量修改了,現(xiàn)在去看看你的文章是否都被更改了

  • 最后提個(gè)醒:以下介紹的SQL語句都在我的博客上做過測(cè)試,但是盡管如此,操作數(shù)據(jù)庫之前都要先備份一下你的數(shù)據(jù)庫;定期備份你的數(shù)據(jù)庫是好習(xí)慣

SQL命令執(zhí)行窗口:

【整理分享】WordPress批量修改文章信息的方法詳解

1、批量修改文章內(nèi)容:

如果你想替換之前寫過的所有文章中的某些內(nèi)容,如更換博客的名稱,更換博客的網(wǎng)址,更換文章配圖的鏈接等等,你可以使用以下SQL語句:

UPDATE?wp_posts? SET?post_content?=?replace(?post_content,?'露兜博客',?'露兜中文博客'?);

該語句的功能是將所有文章中的 露兜博客 字眼,全部替換成 露兜中文博客,你可以根據(jù)需要做一些更改。因?yàn)槲恼聝?nèi)容在數(shù)據(jù)庫中是以html代碼形式存儲(chǔ)的,所以以上SQL語句同樣可以替換HTML代碼。

如果你只是想更改文章插圖的鏈接,而不想影響其他的鏈接,可以使用以下SQL語句,所有src=”oldurl.com被替換成了src=”newurl.com

UPDATE?wp_posts? SET?post_content?=? REPLACE?(post_content,?'src="oldurl.com',?'src="newurl.com');

如果你是以圖片附件形式上傳的話,需要更改圖片附件的GUID

UPDATE?wp_posts SET??guid?=?REPLACE?(guid,?'oldsiteurl.com',?'newsiteurl.com')? WHERE?post_type?=?'attachment';

2、批量修改文章摘要:

文章摘要就是你在WordPress后臺(tái)編輯文章時(shí),”摘要”框中輸入的內(nèi)容,如果你想批量更改文章摘要,可以使用以下語句:

UPDATE?wp_posts? SET?post_excerpt?=?replace(?post_excerpt,?'露兜博客',?'露兜中文博客'?);

該語句的功能是將所有文章摘要中的 露兜博客 字眼,全部替換成 露兜中文博客。

3、批量修改文章的作者:

假設(shè)你的博客有兩名注冊(cè)用戶,張三和李四,你想將張三的所有文章劃歸到李四名下,這時(shí)候該怎么辦呢?你可以執(zhí)行以下語句:

UPDATE?wp_posts? SET?post_author?=?李四用戶id? WHERE?post_author?=?張三用戶id;

那如何獲得 李四的用戶id 和 張三的用戶id 呢?你可以執(zhí)行以下SQL語句:

SELECT?ID,?user_nicename,?display_name?FROM?wp_users;

這時(shí)將列出你博客上所有的注冊(cè)用戶的ID,昵稱和公開顯示的名稱,你現(xiàn)在就可以找到對(duì)應(yīng)用戶的ID了,如下圖,zhangsan的ID為2,lisi的ID為5:

【整理分享】WordPress批量修改文章信息的方法詳解

你的SQL就可以這樣寫了:

UPDATE?wp_posts? SET?post_author?=?5?WHERE?post_author?=?2;

4、批量修改文章評(píng)論者的網(wǎng)站URL:

假設(shè),你的博客有個(gè)非常忠實(shí)的讀者,給你的博客文章留下很多有用的評(píng)論,同時(shí)他的評(píng)論都填寫了留言者的網(wǎng)站URL,但是有一天他的博客域名換了,并請(qǐng)求你更新他留言中的網(wǎng)站URL,那你怎么辦?手動(dòng)一個(gè)一個(gè)幫他改,這不太現(xiàn)實(shí)。你可以使用以下SQL語句:

UPDATE?wp_comments? SET?comment_author_url?=?REPLACE(?comment_author_url,?'oldurl.com',?'newurl.com'?)

以上語句,將留言者所有舊的網(wǎng)站鏈接oldurl.com,更改為新的網(wǎng)址newurl.com

5、禁用所有文章的pingback功能:

開啟pingback功能,可以在別人引用你的文章鏈接的情況下,給你發(fā)送通知,但是該功能似乎對(duì)我們的文章沒多大幫助,那為何不把pingback給禁止了呢?在WordPress后臺(tái) – 設(shè)置 – 討論,取消勾選”接收來自外部博客的引用通告(pingbacks 和 trackbacks)”,這樣以后的文章都不開啟pingback,但是該選項(xiàng)不會(huì)對(duì)之前的已發(fā)布的文章起作用,還是要用到SQL:

UPDATE?wp_posts? SET?ping_status?=?'closed';

6、刪除所有文章的修訂版:

在通常情況下,文章的修訂版對(duì)大多數(shù)人來說沒多大意義,而且修訂版的數(shù)量會(huì)隨著你修改文章的次數(shù)不斷增長,這會(huì)增加數(shù)據(jù)庫的查詢速度,這并不是什么好事?;ヂ?lián)網(wǎng)上有很多教你如何禁止修訂版的文章,還有很多插件可以刪除文章修訂版,你可以自己搜索看看。這里教你如何使用SQL語句,刪除所有已產(chǎn)生的文章修訂版數(shù)據(jù):

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';

7、刪除某個(gè)評(píng)論者的所有評(píng)論:

如果你的博客想要封殺某人,并刪除其在你博客的所有留言,可以使用以下SQL語句。

(1)根據(jù)留言者的博客URL進(jìn)行刪除,以下SQL語句將刪除所有URL為 www.example.com 的評(píng)論

DELETE?from?wp_comments? WHERE?comment_author_url?LIKE?'%www.example.com%';

(2)根據(jù)留言者的昵稱進(jìn)行刪除,以下語句將刪除所有昵稱為 example 的評(píng)論

DELETE?from?wp_comments? WHERE?comment_author?=?'example';

(2)根據(jù)留言者的Email進(jìn)行刪除,以下語句將刪除所有Email為 example@example.com 的評(píng)論

DELETE?from?wp_comments? WHERE?comment_author_email?=?'example@example.com';

8、替換所有評(píng)論中的敏感詞匯:

國內(nèi)的互聯(lián)網(wǎng)監(jiān)控力度表現(xiàn)出了不斷加強(qiáng)的趨勢(shì),如果你的博客評(píng)論中出現(xiàn)了大量的敏感詞匯,很可能離被墻也不遠(yuǎn)了。最好的做法是,替換相關(guān)的敏感詞匯,以保證你的博客安全,以下SQL語句將所有評(píng)論中的 fuck,替換成 **,替換內(nèi)容根據(jù)你的需要來。

UPDATE?wp_comments? SET?comment_content?=?replace(?comment_content,?'fuck',?'**'?);

9、關(guān)閉文章評(píng)論功能

有時(shí)候你的博客可能會(huì)因?yàn)槟撤N原因,需要關(guān)閉文章的評(píng)論。在WordPress后臺(tái) – 設(shè)置 – 討論,那里取消勾選”允許人們發(fā)表新文章的評(píng)論”,以后發(fā)表的文章默認(rèn)是關(guān)閉評(píng)論的。但是之前已經(jīng)發(fā)表的文章,若想關(guān)閉評(píng)論需要你一篇一篇地去修改評(píng)論設(shè)置,這是一件比較痛苦的事情。以下SQL語句可以幫助你輕松地批量關(guān)閉文章評(píng)論:

(1) 關(guān)閉所有舊文章的評(píng)論:
通常情況下,一篇舊文章就很少會(huì)有人發(fā)表評(píng)論了,一般訪問舊文章的訪客大都來自搜索引擎,這是好事,但是這部分訪客還會(huì)提出一些新問題,尤其是技術(shù)問題,但是可能文章中提到的技術(shù)細(xì)節(jié)你已經(jīng)淡忘,這時(shí)候會(huì)讓你很難辦。最好的做法還是還是禁用舊文章的評(píng)論,以下SQL將禁止2009-01-01之前發(fā)表的所有文章的評(píng)論,你可以根據(jù)需要修改日期:

UPDATE?wp_posts? SET?comment_status?=?'closed'?WHERE?post_date?

(2) 關(guān)閉所有文章的評(píng)論:
有時(shí)候很不幸,在不可抗力的威脅下,你不得不關(guān)閉所有文章的評(píng)論,可以使用以下SQL語句:

UPDATE?wp_posts? SET?comment_status?=?'closed'?WHERE?post_status?=?'publish';

推薦學(xué)習(xí):《WordPress教程

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊6 分享