介紹使用WordPress時10個常用的MySQL查詢

liuxuhui發表於2021-09-09

大多數使用 WordPress 搭建的網站,其後臺都是 MySQL 資料庫,經常我們需要定製 WordPress 的功能,這裡我們列表 10 個最有用的 WordPress 的資料庫查詢,你需要一個資料庫的管理工具,例如  phpMyAdmin 或者  Navicat 等來執行這些 SQL 語句。

1. 將所有檔案的作者改為另外一個使用者

在修改之前,你先要知道兩個不同使用者的 ID,你可以在 WP 後臺的 Author & User 頁面中找到這個 ID,或者在檢視使用者資訊時點選使用者名稱的連結,位址列中出現的 user_id 對應的值就是使用者ID,然後執行以下命令進行修改:
 

?

1 UPDATE wp_posts SET post_author = 'new-author-id' WHERE post_author = 'old-author-id';

2. 修改預設管理員 admin 的名稱

WP 預設安裝會建立一個名為 admin 的管理員帳號,你可以修改這個帳號的名稱:
 

?

1 UPDATE wp_users SET user_login = 'Your New Username' WHERE user_login = 'Admin';

3. 刪除修訂版 Revision

文章修訂版浪費了大量的儲存資源,當你有數以千計的文章時,這個數值更加驚人,這會影響程式執行的效能、資料獲取,降低頁面載入時間,解決的辦法就是刪除這些無用的修訂版資訊:
 

?

1234 DELETE a,b,c FROM wp_posts aLEFT 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'

4. 更改 GUID

在進行部落格移植時,你需要修復 wp_posts 表中的 URL 裡的 GUID 資訊,這是非常關鍵的,因為 GUID 用於將 URL 路徑與文章資訊對應起來:
 

?

1 UPDATE wp_posts SET guid = REPLACE (guid, '', '');

5. 更改 Siteurl & Homeurl

當你將網站從本地移到真正的伺服器,網站並無法使用,因為完整的路徑依然指向 localhost,你需要修改網站的 URL 和首頁 URL:
 

?

1 UPDATE wp_options SET option_value = replace(option_value, '', '') WHERE option_name = 'home' OR option_name = 'siteurl';

6. 刪除 Pingback 資料

受歡迎的文章會收到大量的 pingback 資訊,這會讓資料庫的體積龐大,可以使用下面 SQL 語句刪除:
 

?

1 DELETE FROM wp_comments WHERE comment_type = 'pingback';

7. 更改圖片路徑

如果你使用 CDN 來處理圖片訪問,在建立完 CNAME 記錄後,你可透過下面查詢來修改所有影像的路徑:
 

?

1 UPDATE wp_posts SET post_content = REPLACE (post_content, 'class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="', 'class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="');

你還需要透過下面語句來修改圖片附件的 GUID 資訊:
 

?

1 UPDATE wp_posts SET guid = REPLACE (guid, '', '') WHERE post_type = 'attachment';

8. 標出無用的標籤

刪除文章時並不會保證刪除對應的標籤,你必須手工來做這個事情,下面這個查詢可讓你找出那些沒有用到的標籤:
 

?

12 SELECT * From wp_terms wtINNER JOIN wp_term_taxonomy wtt ON wt.term_id=wtt.term_id WHERE wtt.taxonomy='post_tag' AND wtt.count=0;

9. 重置密碼

如果想重置登入密碼,如果嫌麻煩可直接用下面的 SQL 語句來完成:
 

?

1 UPDATE wp_users SET user_pass = MD5( 'new_password' ) WHERE user_login = 'your-username';

10. 更新文章後設資料

如果你的每篇文章都保持了特別的 URL ,可使用下面語句來處理:
 

?

1 UPDATE wp_postmeta SET meta_value = REPLACE (meta_value, '','');

在做任何修改之前,我們建議你對資料庫做好備份後再操作。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/756/viewspace-2805453/,如需轉載,請註明出處,否則將追究法律責任。

相關文章