|
下面要介紹的就是一些省時(shí)省力的WordPress SQL查詢方法。
事先備份
WordPress數(shù)據(jù)庫(kù)里存儲(chǔ)了你精心發(fā)表的每一篇文章,來(lái)自你的讀者的所有評(píng)論,以及你對(duì)自己網(wǎng)站進(jìn)行的所有個(gè)性化設(shè)置。 因此,無(wú)論你對(duì)自己有多自信,都請(qǐng)記住一定要事先備份WordPress數(shù)據(jù)庫(kù)。 你可以通過(guò)備份插件進(jìn)行備份。
為所有文章和頁(yè)面添加自定義字段
這段代碼可以為WordPress數(shù)據(jù)庫(kù)內(nèi)所有文章和頁(yè)面添加一個(gè)自定義字段。 你需要做的就是把代碼中的‘UniversalCutomField‘替換成你需要的文字,然后把‘MyValue‘改成需要的值。
復(fù)制代碼 代碼如下:
INSERT INTO wp_postmeta (post_id, meta_key, meta_value)
SELECT ID AS post_id, 'UniversalCustomField'
AS meta_key 'MyValue AS meta_value FROM wp_postsWHERE ID NOT IN (SELECT post_id FROM wp_postmeta WHERE meta_key = 'UniversalCustomField');
如果只需要為文章添加自定義字段,可以使用下面這段代碼:
復(fù)制代碼 代碼如下:
INSERT INTO wp_postmeta (post_id, meta_key, meta_value)
SELECT ID AS post_id, 'UniversalCustomField'
AS meta_key 'MyValue AS meta_value
FROM wp_posts WHERE ID NOT IN
(SELECT post_id FROM wp_postmeta WHERE meta_key = 'UniversalCustomField')`` AND post_type = 'post';
如果只需要為頁(yè)面添加自定義字段,可以使用下面這段代碼:
復(fù)制代碼 代碼如下:
INSERT INTO wp_postmeta (post_id, meta_key, meta_value)
SELECT ID AS post_id, 'UniversalCustomField'
AS meta_key 'MyValue AS meta_value
FROM wp_posts WHERE ID NOT IN
(SELECT post_id FROM wp_postmeta WHERE meta_key = 'UniversalCustomField')AND `post_type` = 'page';
刪除文章meta數(shù)據(jù)
當(dāng)你安裝或刪除插件時(shí),系統(tǒng)通過(guò)文章meta標(biāo)簽存儲(chǔ)數(shù)據(jù)。 插件被刪除后,數(shù)據(jù)依然會(huì)存留在post_meta表中,當(dāng)然這時(shí)你已經(jīng)不再需要這些數(shù)據(jù),完全可以刪除之。 記住在運(yùn)行查詢前把代碼里的‘YourMetaKey‘替換成你需要的相應(yīng)值。
復(fù)制代碼 代碼如下:
DELETE FROM wp_postmeta WHERE meta_key = 'YourMetaKey';
查找無(wú)用標(biāo)簽
如果你在WordPress數(shù)據(jù)庫(kù)里執(zhí)行查詢刪除舊文章,和之前刪除插件時(shí)的情況一樣,文章所屬標(biāo)簽會(huì)留在數(shù)據(jù)庫(kù)里,并且還會(huì)出現(xiàn)在標(biāo)簽列表/標(biāo)簽云里。 下面的查詢可以幫你找出無(wú)用的標(biāo)簽。
復(fù)制代碼 代碼如下:
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;
批量刪除垃圾評(píng)論
執(zhí)行以下SQL命令:
復(fù)制代碼 代碼如下:
DELETE FROM wp_comments WHERE wp_comments.comment_approved = 'spam';
批量刪除所有未審核評(píng)論
這個(gè)SQL查詢會(huì)刪除你的網(wǎng)站上所有未審核評(píng)論,不影響已審核評(píng)論。
復(fù)制代碼 代碼如下:
DELETE FROM wp_comments WHERE comment_approved = 0
禁止評(píng)論較早文章
指定comment_status的值為open、closed或registered_only。
此外還需要設(shè)置日期(修改代碼中的2010-01-01):
復(fù)制代碼 代碼如下:
UPDATE wp_posts SET comment_status = 'closed' WHERE post_date < '2010-01-01' AND post_status = 'publish';
停用/激活trackback與pingback
指定comment_status的值為open、closed或registered_only。
向所有用戶激活pingbacks/trackbacks:
復(fù)制代碼 代碼如下:
UPDATE wp_posts SET ping_status = 'open';
向所有用戶禁用pingbacks/trackbacks:
復(fù)制代碼 代碼如下:
UPDATE wp_posts SET ping_status = 'closed';
激活/停用某一日期前的Pingbacks & Trackbacks
指定ping_status的值為open、closed或registered_only。
此外還需要設(shè)置日期(修改代碼中的2010-01-01):
復(fù)制代碼 代碼如下:
UPDATE wp_posts SET ping_status = 'closed' WHERE post_date < '2010-01-01' AND post_status = 'publish';
刪除特定URL的評(píng)論
當(dāng)你發(fā)現(xiàn)很多垃圾評(píng)論都帶有相同的URL鏈接,可以利用下面的查詢一次性刪除這些評(píng)論。%表示含有“%"符號(hào)內(nèi)字符串的所有URL都將被刪除。
復(fù)制代碼 代碼如下:
DELETE from wp_comments WHERE comment_author_url LIKE "%nastyspamurl%" ;
識(shí)別并刪除“X"天前的文章
查找“X"天前的所有文章(注意把X替換成相應(yīng)數(shù)值):
復(fù)制代碼 代碼如下:
SELECT * FROM `wp_posts` WHERE `post_type` = 'post'AND DATEDIFF(NOW(), `post_date`) > X
刪除“X"天前的所有文章:
復(fù)制代碼 代碼如下:
DELETE FROM `wp_posts` WHERE `post_type` = 'post'AND DATEDIFF(NOW(), `post_date`) > X
刪除不需要的短代碼
當(dāng)你決定不再使用短代碼時(shí),它們不會(huì)自動(dòng)消失。你可以用一個(gè)簡(jiǎn)單的SQL查詢命令刪除所有不需要的短代碼。 把“tweet"替換成相應(yīng)短代碼名稱:
復(fù)制代碼 代碼如下:
UPDATE wp_post SET post_content = replace(post_content, '[tweet]', '' ) ;
將文章轉(zhuǎn)為頁(yè)面
依然只要通過(guò)phpMyAdmin運(yùn)行一個(gè)SQL查詢就可以搞定:
復(fù)制代碼 代碼如下:
UPDATE wp_posts SET post_type = 'page' WHERE post_type = 'post'
將頁(yè)面轉(zhuǎn)換成文章:
復(fù)制代碼 代碼如下:
UPDATE wp_posts SET post_type = 'post' WHERE post_type = 'page'
更改所有文章上的作者屬性
首先通過(guò)下面的SQL命令檢索作者的ID:
復(fù)制代碼 代碼如下:
SELECT ID, display_name FROM wp_users;
成功獲取該作者的新舊ID后,插入以下命令,記住用新作者ID替換NEW_AUTHOR_ID,舊作者ID替換OLD_AUTHOR_ID。
復(fù)制代碼 代碼如下:
UPDATE wp_posts SET post_author=NEW_AUTHOR_ID WHERE post_author=OLD_AUTHOR_ID;
批量刪除文章修訂歷史
文章修訂歷史保存可以很實(shí)用,也可以很讓人煩惱。 你可以手動(dòng)刪除修訂歷史,也可以利用SQL查詢給自己節(jié)省時(shí)間。
復(fù)制代碼 代碼如下:
DELETE FROM wp_posts WHERE post_type = "revision";
停用/激活所有WordPress插件
激活某個(gè)插件后發(fā)現(xiàn)無(wú)法登錄WordPress管理面板了,試試下面的查詢命令吧,它會(huì)立即禁用所有插件,讓你重新登錄。
復(fù)制代碼 代碼如下:
UPDATE wp_options SET option_value = 'a:0:{}' WHERE option_name = 'active_plugins';
更改WordPress網(wǎng)站的目標(biāo)URL
把WordPress博客(模板文件、上傳內(nèi)容&數(shù)據(jù)庫(kù))從一臺(tái)服務(wù)器移到另一臺(tái)服務(wù)器后,接下來(lái)你需要告訴WordPress你的新博客地址。
使用以下命令時(shí),注意將http://www.old-site.com換成你的原URL,http://blog.doucube.com換成新URL地址。
首先:
復(fù)制代碼 代碼如下:
UPDATE wp_options
SET option_value = replace(option_value, 'http://www.old-site.com', 'http://blog.doucube.com')
WHERE option_name = 'home' OR option_name = 'siteurl';
然后利用下面的命令更改wp_posts里的URL:
復(fù)制代碼 代碼如下:
UPDATE wp_posts SET guid = replace(guid, 'http://www.old-site.com','http://blog.doucube.com);
最后,搜索文章內(nèi)容以確保新URL鏈接與原鏈接沒(méi)有弄混:
復(fù)制代碼 代碼如下:
UPDATE wp_posts SET post_content = replace(post_content, ' http://www.ancien-site.com ', ' http://blog.doucube.com ');
更改默認(rèn)用戶名Admin
把其中的YourNewUsername替換成新用戶名。
復(fù)制代碼 代碼如下:
UPDATE wp_users SET user_login = 'YourNewUsername' WHERE user_login = 'Admin';
手動(dòng)重置WordPress密碼
如果你是你的WordPress網(wǎng)站上的唯一作者,并且你沒(méi)有修改默認(rèn)用戶名, 這時(shí)你可以用下面的SQL查詢來(lái)重置密碼(把其中的PASSWORD換成新密碼):
復(fù)制代碼 代碼如下:
UPDATE `wordpress`.`wp_users` SET `user_pass` = MD5('PASSWORD')
WHERE `wp_users`.`user_login` =`admin` LIMIT 1;
搜索并替換文章內(nèi)容
OriginalText換成被替換內(nèi)容,ReplacedText換成目標(biāo)內(nèi)容:
復(fù)制代碼 代碼如下:
UPDATE wp_posts SET `post_content` = REPLACE (`post_content`, 'OriginalText','ReplacedText');
更改圖片URL
下面的SQL命令可以幫你修改圖片路徑:
復(fù)制代碼 代碼如下:
UPDATE wp_postsSET post_content = REPLACE (post_content, 'src="http://www.myoldurl.com', 'src="http://blog.doucube.com');
php技術(shù):整理的一些實(shí)用WordPress后臺(tái)MySQL操作命令,轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。