过期域名预定抢注

 找回密碼
 免费注册

wordpress批量更新category的方法

  [複製鏈接]
發表於 2013-7-9 10:58:26 | 顯示全部樓層 |閱讀模式
wordpress在線寫英文有些慢,我是在本地寫了一個簡單的錄入系統.寫好後批量導入進去.這牽涉到一些category或者tag的導入.為了批量導入.寫了一個存儲過程.然後批量調用存儲過程,可以把category導入進去.分享一下.
3 ~7 s+ B! V. ?$ e- s( f
4 T9 M$ P5 ]: B2 n9 O
, J! A  S' K' l# UCREATE  PROCEDURE `p_add_article_category`(in v_term VARCHAR(300),in v_title varchar(2000))+ d! O6 c' P/ R2 {) B: A, P
BEGIN& \5 U/ K* a1 @. _3 L
set @wp_post_id=IFNULL((select id from wp_posts where post_title=v_title limit 0,1),0);4 @- w4 ~  R, n5 }
if (@wp_post_id>0) then
4 H0 n* X) ^1 t. t6 A/ j   set @term_id=IFNULL((select term_id from wp_terms where name=v_term limit 0,1),0);7 l( f5 H$ L# v. w, t
   if (@term_id=0) then& H7 d: @, G' }  {- U; T! i
       insert into wp_terms(name,slug, term_group) values(v_term,v_term,0);. }+ s" X) Z7 ]( p
       set @term_id=(select term_id from wp_terms where name=v_term limit 0,1);
. c6 d7 [$ M$ M/ l   end if;
6 {3 ]& v6 H' g! k   set @term_taxonomy_id=IFNULL((select term_taxonomy_id from wp_term_taxonomy where taxonomy='category' and term_id=@term_id limit 0,1),0);& [" ^' g0 j* `; v  N
   if (@term_taxonomy_id =0) then
# G4 }; P, x; Z4 U           insert into wp_term_taxonomy(term_id,taxonomy,description,parent,count) values(@term_id,'category','',0,0);2 `7 a4 ~6 u- O+ q
           set @term_taxonomy_id=(select term_taxonomy_id from wp_term_taxonomy where taxonomy='category' and term_id=@term_id limit 0,1);
) @. y# H; \7 i8 c# z: d& e6 J   end if;- @2 ~* @; y0 {# U9 m5 D1 ]6 b
7 t5 d* E, [8 N) x/ Y
   if(not EXISTS(select 1 from wp_term_relationships where object_id=@wp_post_id and term_taxonomy_id=@term_taxonomy_id)) then
& f0 N* ~6 L4 Z4 i1 }           insert into wp_term_relationships(object_id,term_taxonomy_id,term_order) values(@wp_post_id,@term_taxonomy_id,0);$ m) g. I: O! I8 R* Y
           update wp_term_taxonomy set count=count+1 where taxonomy='category' and term_id=@term_id;
# T" D0 _2 A6 i; L2 z0 ?   end if;& `* k3 }% q; g! N
end if;
$ a: b/ J9 A9 E3 ^  z$ j5 i  @END+ ^  O/ w1 [/ p7 _' @+ T) ~

( i4 u0 q& Z/ @. _( c9 e% f調用方法:& [7 \6 q6 n/ E4 i& O) U, @
/ y' R2 o# h9 B& ]; Q; U$ m) F
call  p_add_article_category('scenery','this is the title about scenery');
! K% D$ P- @- C
% E  \- q$ e8 D+ X  N3 P. V9 S; O: F$ V' {

評分

參與人數 2點點 +4 收起 理由
月光飞燕 + 3
sophieqd + 1

查看全部評分

發表於 2013-7-9 11:19:57 | 顯示全部樓層
火車必用,謝謝分享。好東西
% a5 g8 T9 ?7 @% A( L
回復 给力 爆菊

使用道具 舉報

發表於 2013-7-9 21:11:13 | 顯示全部樓層
好東西,謝謝分享!愛瘋!
  D7 d" n; W# P- A( F
回復 给力 爆菊

使用道具 舉報

發表於 2013-7-10 02:41:54 | 顯示全部樓層
能詳細說下怎麼用嗎?" y( T0 x6 e4 l/ ?$ N$ S4 n
我是不是建一個php文件,把這個句子寫進去
/ Z* Z5 o' G2 N比如8 [, E3 \( W0 R
call  p_add_article_category('scenery','this is the title about scenery');
+ S4 y% b; `, D  Y6 m0 Qcall  p_add_article_category('scenery','this is the title about scenery 2');8 _  [* ?2 }, Z' d* X4 O
call  p_add_article_category('scenery','this is the title about scenery 3');
, R% F: F4 V; ?% K7 t這樣是添加3個文章到目錄了.$ S4 f: U! ^! `3 X5 _
如果一次改n條,是不是就要寫n條.0 J/ G" ~/ P7 Y' e: \+ `( u) I& I& }
可以用關鍵字匹配分類嗎,比如標題有scenery的都一次分類到scenery去
+ M. A- l% x0 g0 \2 b) ~% i
回復 给力 爆菊

使用道具 舉報

發表於 2013-7-10 10:00:03 | 顯示全部樓層
還在搞自動阿,太佩服了。
2 {; M4 A# H( g' p
回復 给力 爆菊

使用道具 舉報

 樓主| 發表於 2013-7-11 08:58:33 | 顯示全部樓層
有魚不換酒 發表於 2013-7-10 02:41 # |: R* C. S2 q( V" [5 [* H
能詳細說下怎麼用嗎?! x% _5 i) T! G, n" U" k2 @
我是不是建一個php文件,把這個句子寫進去
8 ]" [; ^) e; L$ V$ ]) k) B2 M, @比如
0 a* [+ D! e: ~7 B6 v7 P
先把存儲過程通過phpmyadmin註冊進去,然後批量調用就行了.一次可以弄幾千個.一下執行.: ?8 k9 M( c9 g& M' ?5 S

& V+ P1 t) A0 H. M  G$ l: V
回復 给力 爆菊

使用道具 舉報

發表於 2013-7-11 16:03:57 | 顯示全部樓層
shanguiyao 發表於 2013-7-11 08:58 . b* |% X& ^- y$ d
先把存儲過程通過phpmyadmin註冊進去,然後批量調用就行了.一次可以弄幾千個.一下執行.9 O1 X9 O( C- v! L6 D; I* }& P

9 F% p7 q' v( S" o# V& N4 l ...
0 U4 j  `4 J' Y6 u8 ^; q7 h
每一個post的標題都是不一樣的呀.這樣不是要為每一個post文章調用一次你這個存儲過程嗎?
) Q+ Z$ K* m: B5 V% ?( h- [  U批量調用一次,不所有包含某個關鍵字標題的文章都添加一個分類去.這樣如何實現呢
) `+ M* y2 K; N9 m4 ~
回復 给力 爆菊

使用道具 舉報

 樓主| 發表於 2013-7-11 20:20:41 | 顯示全部樓層
對,每一個post標題調用一次.可以批量生成的吧?寫個sql都拼出來要執行的一堆存儲過程語句了.應該不太難吧.
# j% Q$ {0 f7 j
回復 给力 爆菊

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 免费注册

本版積分規則

4um點基跨境網編創業社區

GMT+8, 2024-11-26 04:53

By DZ X3.5

小黑屋

快速回復 返回頂部 返回列表