edo1z blog

プログラミングなどに関するブログです

cakePHP Tagプラグイン

Tagプラグイン

すごくシンプルに使うとすると確かに便利だなあ。

cake schema create --plugin Tags --name tags

これでtagsテーブルと、taggedテーブルを作ってくれる。 tagsテーブルはまさしくtagのテーブルで、taggedテーブルは中間テーブル。

モデルにベヘイビアの設定をする。

public $actsAs = array('Tags.Taggable');

あとは、viewで$this->Form->input('tags');とやるだけ。 このテキストフォーム内にカンマ区切りで文字列を書くと、カンマ区切りで分割して、tagが登録される。なんとも手軽であります。しかもタグが使われている回数も自動登録できるので、タグクラウドもすぐに作れます。しかも、そのタグクラウドを作成するためのヘルパーまであります。

はて、しかしながら、tagsテーブルとは別のタグを用意したい場合や、カンマ区切りじゃなくてスペース区切りがいいとかっていう場合は、モデルのビヘイビア設定のところで追加設定する必要があります。 https://github.com/CakeDC/tags/blob/master/Docs/Documentation/Configuration.md