偶然、WordPressにおいて複数のタグでAND検索する方法というか、タグ検索時に複数のタグを指定できる方法を見つけたので、軽い興奮とともにお伝えしたい!!
256ミリ秒ほどググった感じだと、ほかにこの方法を紹介している記事はなかったので、ヒジョーに有益な情報か、あるいは全く誰の役にも立たない情報かのどちらかだと思います。
なぜタグなのか
タグ、使いますよね?
みなさんタグ使いますよね? タグ。
ぼくは使います。使いまくります。
階層構造なんて要らない。すべてフラットに、タグでフィルタリングできればいい。
っていうくらい、個人的にはタグ好き。
情報にタグ付けをして整理するのも好きだし、タグ付けした情報をタグ検索してフィルタリングするのも好き。
WordPressでもEvernoteでも、Gmail(の場合は「ラベル」と言います)でもファイルシステム(っていうかmacOSのFinder)でも、タグ管理機能を持つものはなんだってタグ管理したい。
タグの良さ
ここまで熱く語ってきて「あれもしかして、この記事読んでる人タグ知らなくね?」って急に不安になってきたので、WordPressにおける「カテゴリー」との対比から「タグ」を説明していきたい。
カテゴリーとは
「タグ」の前に、先に「カテゴリー」を説明しますが、WordPressにおいて、カテゴリーっていうのは、記事を分類分けするための機能です。
この記事の場合、下記のようにTECHカテゴリーに分類していることになります。
「カテゴリー」は階層構造なので、親カテゴリーとか子、孫カテゴリーが持てます。上記だと、TECHカテゴリーの親はHOMEと見なすことができます。
階層構造の代表例として、ファイルシステムのフォルダー構造(Windowsなど)やディレクトリ構造(macOSやUnix/Linuxなど)を思い浮かべると、理解が早いかもしれません。
階層構造は下記のような特徴を持っています。
- 親はひとつ
- 子にたどり着くために親から順にアクセスする必要がある
カテゴリーのデメリット
階層構造のデメリットとして、親はひとつなので、分類するときに「どの親を持つか(どの親に属させるか)」に迷うことがあります。そもそも分類学っていう学問があるくらいなので、素人が安易に手を出すと収拾がつかなくなることがあります。
また、親から順にアクセスする必要があるため、親を間違えると目的物(オブジェクト – WordPressなら記事、ファイルシステムならファイル)にたどり着けません。これは、深いフォルダー構造(ディレクトリ構造)でファイルを探そうとしてなかなか見つからない、といったシーンでよく見かけると思います。
タグとは
「タグ」という概念は、この「カテゴリー」のアンチテーゼとして生まれてきた、と理解しています。
「タグ」は、目的物(オブジェクト)につけるメタ情報(情報に付随する付加情報 – メタデータ)で、商品についているタグやラベルをメタファーとして思い浮かべると、理解しやすいと思います。
オブジェクトの付加情報であるため、下記のようなメリットがあります。
- オブジェクトの容れ物としての情報管理構造であるカテゴリーと共存できる
- タグ検索によりカテゴリーを横断した横串検索ができる
- 複数のタグを指定することにより絞り込みができる
タグのデメリット
「タグ」にもデメリットはあって、しばしばそのときの興味で思いつきのタグを付与してしまい、オブジェクトの総量に対し、多すぎるタグをつけてしまうことが挙げられます。タグを管理するためのタグが欲しくなったりして、本末顛倒だったりします。
個人的には、カテゴリーを大きな概念、タグを細かな概念として分けて、使い分けていくのが良いかなと思っています。
WordPressの記事をタグで絞り込む
「タグ」に対する思い入れが強すぎて、本題にだどりつくのに文字数を使いすぎました…。
ここでは、「タグ」のメリットのひとつである、複数のタグを指定することで絞り込みができるという機能を、WordPressの記事で実施するためにはどうすれば良いか、ということを解説していきます。
ちなみに「カテゴリー」でなぜ複数指定による絞り込みができないかと言うと、親がひとつしかないからですね。容れ物を複数指定してもAND検索はできない、ということです。OR検索ならできますけどね。
ひとつのタグで絞り込む
複数タグの前に、まずはひとつの「タグ」を指定する方法から解説します。
WordPressにおいては、URLに/tag/タグのスラッグ/
という形式を指定するとこの「タグ」で絞り込まれた記事が表示されます。
例えば、当サイトでWordPressという「タグ」で絞り込む場合、下記のようなURLを組み立てれば良いわけです。
https://moretemasen.com/tag/wordpress/
CSSという「タグ」で絞り込む場合は、こうですね。
https://moretemasen.com/tag/css/
まぁ、このくらいは普段、「タグ」で絞り込みをしていれば気づくと思います。
複数のタグで絞り込む
改めて説明すると、「タグ」っていうのは、ひとつのオブジェクト(WordPressの記事)にいくつもつけられます。また、「タグ」の利用目的が「横串検索」であり、大量の記事を横断的に検索するもの(フィルタリングするもの)だと理解していれば、「複数のタグを指定することによってAND検索できる」という直感を持つのは正しい。
要は、WordPressという「タグ」がついた記事の中から、さらにCSSっていう「タグ」もついた記事を絞り込む(AND検索する)ためには、「複数のタグを指定する」というのが自然な方法ですよ、ということです。
いよいよ本題。
WordPressの場合、以下のように、複数の「タグ」を+で結合してURLを組み立てると、複数タグを指定できます。
WordPressとCSSで絞り込みを行う場合、wordpress+cssとするわけですね。「複数指定する要素を+記号で結合する」という方法もヒジョーに直感的で好感が持てます。
さらにXserverで絞り込む場合は以下のようになります。ただしWordPress、CSS、Xserverの3つすべてのタグがついた記事はないので、記事はヒットしません。
https://moretemasen.com/tag/wordpress+css+xserver/
WordPressとXserverが付与された記事は存在するので、下記のようにURLを組み立てればヒットします。
https://moretemasen.com/tag/wordpress+xserver/
順番を逆に指定しても、当然同じ結果が返ってきます。
https://moretemasen.com/tag/xserver+wordpress/
まとめ
まずは「タグ」とはどういうものか、ということをカテゴリー(階層構造)との対比で説明しました。
続いて、本題の「WordPressで複数のタグを指定して絞り込みを行う方法」を解説しました。具体的には、+で「タグ」のスラッグの結合したURLを組み立てれば良い、ということでした。
情報整理に「タグ」が有効活用できるようになれば幸いです。
コメント