过期域名预定抢注

 找回密碼
 免费注册

wordpress批量更新category的方法

  [複製鏈接]
發表於 2013-7-9 10:58:26 | 顯示全部樓層 |閱讀模式
wordpress在線寫英文有些慢,我是在本地寫了一個簡單的錄入系統.寫好後批量導入進去.這牽涉到一些category或者tag的導入.為了批量導入.寫了一個存儲過程.然後批量調用存儲過程,可以把category導入進去.分享一下.
3 ?% D& q0 V4 {' W0 Z* k/ M% F5 \6 d8 \7 g% l

7 ~' a: o$ ]6 y: y* ECREATE  PROCEDURE `p_add_article_category`(in v_term VARCHAR(300),in v_title varchar(2000))
. k# D! b* ~$ _* g+ v! d  _BEGIN7 m0 y, p  w/ s; q  U4 L! `
set @wp_post_id=IFNULL((select id from wp_posts where post_title=v_title limit 0,1),0);
0 h9 g# `& E/ o6 n/ s& Vif (@wp_post_id>0) then
+ Q5 u3 V. H; u( E! t   set @term_id=IFNULL((select term_id from wp_terms where name=v_term limit 0,1),0);4 b1 d3 H% {9 d7 J
   if (@term_id=0) then
8 V( F* U$ W: H  U# A3 C       insert into wp_terms(name,slug, term_group) values(v_term,v_term,0);+ E! d, @/ I( t* ^) W" B" |
       set @term_id=(select term_id from wp_terms where name=v_term limit 0,1);+ k3 v' J# k+ w6 \% A, d, q
   end if;$ o- i) W( k4 _- {) Z6 _; X& p
   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);. r: B4 Q8 V2 K3 H2 `$ U# O2 Z# a/ ~
   if (@term_taxonomy_id =0) then
0 O9 N# q6 A; I3 l) p' \           insert into wp_term_taxonomy(term_id,taxonomy,description,parent,count) values(@term_id,'category','',0,0);
3 Z- c0 G7 e0 }, Q: w6 e           set @term_taxonomy_id=(select term_taxonomy_id from wp_term_taxonomy where taxonomy='category' and term_id=@term_id limit 0,1);7 h4 _, p+ C, |
   end if;
, U- m4 V0 ^4 X+ d. ^4 _( d. k2 s2 Z/ d3 d1 U" C
   if(not EXISTS(select 1 from wp_term_relationships where object_id=@wp_post_id and term_taxonomy_id=@term_taxonomy_id)) then
$ y& _2 _! Q* q- Y: b           insert into wp_term_relationships(object_id,term_taxonomy_id,term_order) values(@wp_post_id,@term_taxonomy_id,0);4 z+ V/ N' P6 J* O
           update wp_term_taxonomy set count=count+1 where taxonomy='category' and term_id=@term_id;
  S3 \# i, O# `& o  c   end if;/ m7 ?3 _5 B" d4 a& B& G
end if;
+ W1 E9 X! b7 i* U; B! {/ xEND& ~7 k, W& F# z' m
9 s& j$ z9 k6 G4 x. ]  t" A
調用方法:9 E3 u! i7 s+ q+ D' G. b' B

, ~; z, `% X) m7 Y0 D" gcall  p_add_article_category('scenery','this is the title about scenery');
0 v, g7 N3 g/ m
+ ^8 i: L: I% K2 R
- q: Z! G; U  z

評分

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

查看全部評分

發表於 2013-7-9 11:19:57 | 顯示全部樓層
火車必用,謝謝分享。好東西8 ]: g( H! ^9 w$ ]
回復 给力 爆菊

使用道具 舉報

發表於 2013-7-9 21:11:13 | 顯示全部樓層
好東西,謝謝分享!愛瘋!
- `1 Y5 k! B+ l
回復 给力 爆菊

使用道具 舉報

發表於 2013-7-10 02:41:54 | 顯示全部樓層
能詳細說下怎麼用嗎?
+ r1 M6 P* u4 w3 Y9 ^$ X我是不是建一個php文件,把這個句子寫進去  F$ {) k! d4 D: l1 s
比如7 U) o0 E2 ]* u% u" \- u
call  p_add_article_category('scenery','this is the title about scenery');
. j# k, I4 ?. [) H5 l/ hcall  p_add_article_category('scenery','this is the title about scenery 2');
2 w1 K" l, M7 K7 k  Icall  p_add_article_category('scenery','this is the title about scenery 3');
( G$ V8 n) {! V' h% f6 ]5 t! G這樣是添加3個文章到目錄了.
" b- \( J1 ?8 v; ~1 ?! s" N! G如果一次改n條,是不是就要寫n條.' t1 s% @" c, D- D# G, P
可以用關鍵字匹配分類嗎,比如標題有scenery的都一次分類到scenery去: n7 h1 `) P/ j" ^8 V% K
回復 给力 爆菊

使用道具 舉報

發表於 2013-7-10 10:00:03 | 顯示全部樓層
還在搞自動阿,太佩服了。
* J: [* `& X- `, X9 C  X/ J% z
回復 给力 爆菊

使用道具 舉報

 樓主| 發表於 2013-7-11 08:58:33 | 顯示全部樓層
有魚不換酒 發表於 2013-7-10 02:41
) `$ p3 m; ^0 q1 c" Z0 |! s能詳細說下怎麼用嗎?: j) {: z* v: @
我是不是建一個php文件,把這個句子寫進去) T7 P/ j* v& F2 B3 g# k& C( S
比如
8 u  u8 K( M8 w: o. L
先把存儲過程通過phpmyadmin註冊進去,然後批量調用就行了.一次可以弄幾千個.一下執行.
9 T0 e* ?9 P& T4 d
/ s" q# |, [, C  r
回復 给力 爆菊

使用道具 舉報

發表於 2013-7-11 16:03:57 | 顯示全部樓層
shanguiyao 發表於 2013-7-11 08:58
& w+ u8 z0 v" o# X' x) R7 H先把存儲過程通過phpmyadmin註冊進去,然後批量調用就行了.一次可以弄幾千個.一下執行.
  @4 v! ]$ x- E- E# [' t
7 c' e& n6 F* ]% Y9 Y( ~+ c ...

  k- Z, u" V  Q0 q每一個post的標題都是不一樣的呀.這樣不是要為每一個post文章調用一次你這個存儲過程嗎?# }$ A  t$ Z8 b' S: k4 M
批量調用一次,不所有包含某個關鍵字標題的文章都添加一個分類去.這樣如何實現呢
8 F# @3 W# V* ~) u5 l6 ]( b
回復 给力 爆菊

使用道具 舉報

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

使用道具 舉報

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

本版積分規則

过期高净值品牌域名预定抢注

點基

GMT+8, 2026-6-26 15:31

By DZ X3.5

小黑屋

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