個別アイテムページのURLをカテゴリー付与で統一したい
- 投稿日 : 2009-05-04, 19:14
- 最終更新日時 : 2010-12-22 18:59:35(履歴)
- タグ(Nucleus / NucleusPlugin)
- カテゴリ(Nucleus)
- 記し人(luvsic)[PDF]
- 閲覧数(3322)
『http://example.com/cat/123.html』のように、
『ドメイン/カテゴリー/アイテム名』というURLで、Nucleusの個別アイテムページ統一したい、かつ投稿画面からのカテゴリー選択は日本語で表示したい。
記述は下記のようになった。
スキンでかたっぱしからこの例のように記述していけばよい。
<%blogurl%><%category%>/<%CustomURL(path)%>
72時間くらいハマったのが、フィードのスキン(feeds/rss20テンプレートやfeeds/atomスキン)での<%CustomURL(path)%>の部分。スキン、テンプレートの両方で使用できるNP_CustomURLの変数だが、これはxml-rss2.phpとatom.phpから直接呼び出すと仮想パス(123.htmlなど)が出力されない。ただし<%CustomURL(trackback)%>は出力できる。
解決策は、NP_CustomURLで仮想的に呼び出すrss2.xmlやatom.xmlからだとURLを出力できるので、そちらだけを使用すること。そういうわけでxml-rss2.phpとatom.phpはサイト上からは一切見えないように気をつける必要がある。
投稿画面でのカテゴリー選択セレクトボックスを日本語にする方法は、結局NP_CatDescListで日本語化した。昔から「カテゴリーの説明って何に使うんだろう」って思っていたのだけれども、今考えればこの投稿画面での使用の場合と、SEO的な部分での利用が有効に思える。でもRSSやAtomに含めたくても、テンプレート変数で『<%category(desc)%>』のオプション指定はできない仕様なので、プラグイン作成して拡張したりしないと不可能のようだ、できればフィードのカテゴリ表示を
『<category>infoConstruction</category>、<category>infoService</category>』じゃなく、
『<category>お知らせ:工事に関して</category>、<category>お知らせ:サービスに関して</category>』のように日本語出力したかったが、まぁいいか。
[追記]
「カテゴリーの説明」を利用するには、NP_CatDesc を利用すれば可能。
No comments yet