「情報分類」モデルは PowerCMS X 3.5から追加されたモデルです。
簡単に言うと、システムスコープに作成されたメタデータ用のモデルで、「タグ」の代替として利用することを想定しています。
両モデルとも通常のリレーション型のカラムと違うのは、テキスト入力欄にカンマ区切りで直接指定することができる点です(もちろんダイアログからの選択も可)。
タグと情報分類の共通事項と違いについて纏めます。
モデル | タグ | カテゴリ |
---|---|---|
登録方法 | カンマ区切りで記事などの編集画面で入力、または管理画面で各々に登録 | |
正規化 | 「PowerCMS」「Power CMS」「PowerCMS」を同一のものとして管理可能 | |
リレーション | モデルごとに異なるものとして管理される | モデルをまたがって同一のオブジェクトとして管理される |
スコープ | スコープごとに管理される | システム全体で管理される |
PowerCMSでも PowerCMS Xでも、例えばカテゴリモデルはスペース(ウェブサイト・ブログ)ごとに管理されますが、各スペースに「プレスリリース」というカテゴリを作成したとして、各々は別のオブジェクトして管理されます。
すべてのスペースに同じ名称のカテゴリを作成しなければなりませんし、システム全体で「プレスリリース」カテゴリの記事一覧アーカイブを作成することはできません(工夫すれば何とかなることはなりますが)。
PowerCMS Xの「システムスコープにアーカイブが作れる」特徴を活かして、情報分類であれば、システムスコープに「ビュー」「URLマップ」を作成すれば、すべてのスペースを串刺しにした記事アーカイブを作ることも可能になります。
情報分類モデルは、モデルのプロパティとしてあらかじめ登録可能な機能となっています。
これで、利用可能になります。
システムスコープにビューとURLマップを作成することで、すべてのスペース配下の記事を束ねた情報分類別記事アーカイブを作成することができます。スペースにビューとURLマップを作成すれば、スペースの記事のみを対象としたアーカイブになります(include_workspaces属性を利用すれば他のスペースの記事も含められますが、コンテナとして関連づけられるのはあくまでも同一のスコープの記事のみです)。
tag/<mt:taxonomyname>/index.html
ここで注意すべきポイントは 3点です。
escape="url" (encode_urlと同じ)モディファイアを指定すると、日本語で入力された情報分類名の時、出力先とURLが一致しなくなります。指定はHTMLへの出力側で、「<mt:taxonomypermalink encode_url_basename="dirname">」または「<mt:taxonomypermalink encode_url_basename="all">」とすることで、適切に%エンコードされるようになります。