WordPressのカテゴリーとタブ確認用のSQLスクリプト

良かったら応援(クリック)して下さい!励みになります。Please Click!

ブログランキング・にほんブログ村へ
イベント出展情報

ALOHA!
今日も、みなさんが笑顔になれますように。

今日はITのお話です。
このBlogはWordpressを使ってます(アメブロも使っていますが)。
うちの環境では、Windows Server上でIISとPHPを動かしています。
ブログをはじめて、それなりに月日が立ちました。
こうして続けることができるのも、読んでくださるみなさんのお陰です。
本当にありがとうございます。感謝です。

このBlogを、もう少し読みやすくしたり、セッションを依頼されるお客様がわかりやすいようにしたいと常々思っております。
また、今後は、せっかく持っている自分のスキルを生かして、ヒーラー様やカウンセラー様などライトワーカー様向けのわかりやすいIT系のサービスも充足させていきたいと思っております。(もちろん、別業種の事業主様や企業様も対応します。)

最近、ブログの記事を書いていて、はじめた頃はぼやけていたり曖昧だったことの輪郭がはっきりすることを感じていたりします。
Wordpressやアメブロに限らず、ブログにはカテゴリーやタグの機能があります。
簡単に言うと、分類を行ったり、キーワードを紐付けるための機能です。
カテゴリーとタグの違いですが、ブログの記事を「物」に例えると、カテゴリーは「引き出し」、タグがものにつける「検索できるラベル」です。
カテゴリーは、一つしか選べないですが、タグはいくつでもつけられます。
両方を上手に使うと、関連する記事を検索したり、読むことが出来ます。

ということで、記事を書いていて、カテゴリーの整理をしたくなりました。
手作業で行うことも出来ますが、記事が多いと作業も多くなるので効率的に行おうと思いました。
Wordpressの記事のデータや設定データなどは、MySQLというデータベースに格納されています。MySQLはSQL文というコマンドで操作をすることができます。
ということで、SQL文を書いてみました。
Wordpressはカテゴリーやタグの情報と記事の情報や関連付けの情報など複数のテーブルにまたがっています。それを紐づけて見られるようにしました。

※SQL文ですが、ある程度の知識をお持ちの方を対象に書きました。
このSQL文を操作するためにはMySQLのコンソールやWP-DBManagerのようなDBを直接操作できるプラグインや、phpMyAdminなどのツールが必要になります。
また、SQLコマンドは使い方を誤ると、データを消してしまったり、思わぬ結果になります。

カテゴリー表示


select * from (SELECT wp_term_taxonomy.term_id,wp_terms.name, wp_term_taxonomy.taxonomy  FROM wp_term_taxonomy inner join wp_terms on wp_term_taxonomy.term_id = wp_terms.term_id where wp_term_taxonomy.taxonomy in('category')) AS select_category;

タグ表示


select * from (SELECT wp_term_taxonomy.term_id,wp_terms.name, wp_term_taxonomy.taxonomy  FROM wp_term_taxonomy inner join wp_terms on wp_term_taxonomy.term_id = wp_terms.term_id where wp_term_taxonomy.taxonomy in('post_tag')) AS select_post_tag;

postとカテゴリ・タグ関連付け表示:記事の投函順でソート(表示が遅いです)


SELECT wp_posts.ID,select_taxonomy.term_id, select_taxonomy.name, select_taxonomy.taxonomy, wp_posts.post_content, wp_posts.post_title FROM wp_term_relationships inner join (SELECT wp_term_taxonomy.term_id,wp_terms.name, wp_term_taxonomy.taxonomy  FROM wp_term_taxonomy inner join wp_terms on wp_term_taxonomy.term_id = wp_terms.term_id) AS select_taxonomy on wp_term_relationships.term_taxonomy_id = select_taxonomy.term_id inner join wp_posts on wp_term_relationships.object_id = wp_posts.ID WHERE taxonomy in ('category', 'post_tag') ORDER BY wp_posts.ID, taxonomy;

postとカテゴリ・タグ関連付け表示:ソートなし


SELECT wp_posts.ID,select_taxonomy.term_id, select_taxonomy.name, select_taxonomy.taxonomy, wp_posts.post_content, wp_posts.post_title FROM wp_term_relationships inner join (SELECT wp_term_taxonomy.term_id,wp_terms.name, wp_term_taxonomy.taxonomy  FROM wp_term_taxonomy inner join wp_terms on wp_term_taxonomy.term_id = wp_terms.term_id) AS select_taxonomy on wp_term_relationships.term_taxonomy_id = select_taxonomy.term_id inner join wp_posts on wp_term_relationships.object_id = wp_posts.ID WHERE taxonomy in ('category', 'post_tag');

特定のカテゴリーを含むもの
[カテゴリー名]に使用しているタグ名を入れてください


select select_posts.*  from (SELECT wp_posts.ID,select_taxonomy.term_id, select_taxonomy.name, select_taxonomy.taxonomy, wp_posts.post_content, wp_posts.post_title   FROM wp_term_relationships inner join (SELECT wp_term_taxonomy.term_id,wp_terms.name, wp_term_taxonomy.taxonomy  FROM wp_term_taxonomy inner join wp_terms on wp_term_taxonomy.term_id = wp_terms.term_id) AS select_taxonomy on wp_term_relationships.term_taxonomy_id = select_taxonomy.term_id inner join wp_posts on wp_term_relationships.object_id = wp_posts.ID) AS select_posts inner join 
(SELECT wp_posts.ID,select_taxonomy.term_id, select_taxonomy.name, select_taxonomy.taxonomy, wp_posts.post_content, wp_posts.post_title   FROM wp_term_relationships inner join (SELECT wp_term_taxonomy.term_id,wp_terms.name, wp_term_taxonomy.taxonomy  FROM wp_term_taxonomy inner join wp_terms on wp_term_taxonomy.term_id = wp_terms.term_id) AS select_taxonomy on wp_term_relationships.term_taxonomy_id = select_taxonomy.term_id inner join wp_posts on wp_term_relationships.object_id = wp_posts.ID where taxonomy = 'category' and name = '[カテゴリー名]') As select_post_tag on select_posts.ID = select_post_tag.ID ORDER BY ID, taxonomy;

特定のタグを含むもの
[タグ名」に使用しているタグ名を入れてください


select select_posts.*  from (SELECT wp_posts.ID,select_taxonomy.term_id, select_taxonomy.name, select_taxonomy.taxonomy, wp_posts.post_content, wp_posts.post_title   FROM wp_term_relationships inner join (SELECT wp_term_taxonomy.term_id,wp_terms.name, wp_term_taxonomy.taxonomy  FROM wp_term_taxonomy inner join wp_terms on wp_term_taxonomy.term_id = wp_terms.term_id) AS select_taxonomy on wp_term_relationships.term_taxonomy_id = select_taxonomy.term_id inner join wp_posts on wp_term_relationships.object_id = wp_posts.ID) AS select_posts inner join 
(SELECT wp_posts.ID,select_taxonomy.term_id, select_taxonomy.name, select_taxonomy.taxonomy, wp_posts.post_content, wp_posts.post_title   FROM wp_term_relationships inner join (SELECT wp_term_taxonomy.term_id,wp_terms.name, wp_term_taxonomy.taxonomy  FROM wp_term_taxonomy inner join wp_terms on wp_term_taxonomy.term_id = wp_terms.term_id) AS select_taxonomy on wp_term_relationships.term_taxonomy_id = select_taxonomy.term_id inner join wp_posts on wp_term_relationships.object_id = wp_posts.ID where taxonomy = 'post_tag' and name = '[タグ名]') As select_post_tag on select_posts.ID = select_post_tag.ID;

特定のカテゴリーとタグを含むもの
[タグ名」に使用しているタグ名を入れてください


select select_posts.ID, select_posts.name, select_posts.post_content, select_posts.post_title, select_posts.term_id, select_post_tag.name as select_post_tag_name, select_post_tag.taxonomy as select_post_tag_taxonomy  from (SELECT wp_posts.ID,select_taxonomy.term_id, select_taxonomy.name, select_taxonomy.taxonomy, wp_posts.post_content, wp_posts.post_title   FROM wp_term_relationships inner join (SELECT wp_term_taxonomy.term_id,wp_terms.name, wp_term_taxonomy.taxonomy  FROM wp_term_taxonomy inner join wp_terms on wp_term_taxonomy.term_id = wp_terms.term_id) AS select_taxonomy on wp_term_relationships.term_taxonomy_id = select_taxonomy.term_id inner join wp_posts on wp_term_relationships.object_id = wp_posts.ID) AS select_posts inner join (SELECT wp_posts.ID,select_taxonomy.term_id, select_taxonomy.name, select_taxonomy.taxonomy, wp_posts.post_content, wp_posts.post_title   FROM wp_term_relationships inner join (SELECT wp_term_taxonomy.term_id,wp_terms.name, wp_term_taxonomy.taxonomy  FROM wp_term_taxonomy inner join wp_terms on wp_term_taxonomy.term_id = wp_terms.term_id) AS select_taxonomy on wp_term_relationships.term_taxonomy_id = select_taxonomy.term_id inner join wp_posts on wp_term_relationships.object_id = wp_posts.ID where taxonomy = 'post_tag' and name = '[タグ名]') As select_post_tag on select_posts.ID = select_post_tag.ID where select_posts.name = '[カテゴリー名]';

更新用のSQL文は次回です。

mahalo
最後まで読んでくださり本当にありがとうございます。

鑑定ご予約は、下記のFacebookメッセンジャーを使用してメッセージを頂くのがいちばん簡単だと思います。
https://m.me/yukihiro.tsuchiya/
Instagramからも簡単だと思います。
https://www.instagram.com/yukihiro.uranai/
また、下記のLINE公式アカウントで繋がってくださっても大丈夫です。
https://page.line.me/213rlnin?openQrModal=true
お問い合わせフォームはこちらです。
お気軽にお問い合わせ下さい!


占いやカウンセリングを通して、メッセージをお伝えしていきます。

個人セッションは、携帯電話、LINE、Zoomで30分間6000円(延長10分間2000円)です。

お気軽にお問い合わせ下さい!
LINE公式アカウントです。気軽に登録してください!
LINE公式アカウント
良かったら応援(クリック)して下さい!励みになります。Please Click!
にほんブログ村 その他趣味ブログ 占いへ

, , , , , , , , ,

IT 2018/12/20

HOME