Initial Site

Initial Site

Initial Site

ワードプレスの改造するときによく使うSQL文!WEB屋のメモ帳

  • ヤスダ  2015/10/09 12:42
4919659112_70f8836dfa

こんにちは。

ワードプレスの改造するときによく使うSQL文をメモ。
WEB屋の保田です。

term_idからterm_taxonomy_idを求める

(´・ω・`)< タグとかカテゴリのIDからリレーションしてる詳細テーブルのIDが求められる!
SELECT term_taxonomy_id FROM wp_term_taxonomy
WHERE taxonomy = ‘category’ AND term_id IN ( $term_id )

wp_terms と wp_term_taxonomy が分かれている理由

複数のtaxonomyで1つのtermを共有する可能性があるためです。
たとえば、リンクで未分類というリンクカテゴリーを作ると、termsの未分類を共有し、term_taxonomyでは、categoryとlink_cateoryと異なるレコードとなります。
参考:https://ja.forums.wordpress.org/topic/12180

term_idからwp_terms .*wp_term_taxonomy.*を求める

(´・ω・`)< タグとかカテゴリのIDからタグ名とかカテゴリ名が求められる!
SELECT t.*, tt.* FROM wp_terms AS t
INNER JOIN wp_term_taxonomy AS tt ON t.term_id = tt.term_id
WHERE tt.taxonomy = ‘category’ AND t.term_id = $term_id
LIMIT 1

term_idからwp_posts.IDを求める

(´・ω・`)< タグとかカテゴリの詳細IDから参照してる記事の内容が求められる!
SELECT SQL_CALC_FOUND_ROWS wp_posts.ID FROM wp_posts
INNER JOIN wp_term_relationships ON (wp_posts.ID = wp_term_relationships.object_id) WHERE 1=1
AND (wp_term_relationships.term_taxonomy_id IN ( $taxonomy_id ))
AND wp_posts.post_type = ‘post’ AND (wp_posts.post_status = ‘publish’ OR wp_posts.post_status = ‘private’)
GROUP BY wp_posts.ID ORDER BY wp_posts.post_date DESC
LIMIT 0, 10

これだけあれば、記事とタグ、カテゴリ関連はほとんど片付くはず。

次回もWEB関連の記事を書く予定です。

WEB屋の保田でした。


コメントをどうぞ

ブログの記事

  1. generate
    2月4日は世界がんデーです
  2. 64585
    ソロウェディングしてきました
  3. DSC_0341
    来年に向けて
  4. ゾゾマリン 
    The boys are back in town