2006年8月17日
Movable Type 3.2 と 3.31 におけるサブカテゴリーリストの表示の違いについて
Posted at August 17,2006 2:20 AM
Category:[トラブルシューティング]
Tag:[MovableType, SubCategory, TroubleShooting]
Category:[トラブルシューティング]
Tag:[MovableType, SubCategory, TroubleShooting]
3.31-ja でサブカテゴリーリストの動作を確認している途中、3.2-ja-2 と比較して下記の違いを発見しましたので、ご報告まで。
まず、次のような構造のカテゴリーがあると仮定します。
趣味
└ パソコン
├ mixi
└ ブログ
このカテゴリーを、公開テンプレートで利用しているサブカテゴリーリストのMTタグ
<MTSubCategories>
<MTSubCatIsFirst><ul></MTSubCatIsFirst>
<MTIfNonZero tag="MTCategoryCount">
<li><a href="<$MTCategoryArchiveLink$>" title="<$MTCategoryDescription$>"><MTCategoryLabel></a> [<$MTCategoryCount$>]
<MTElse>
<li><MTCategoryLabel>
</MTElse>
</MTIfNonZero>
<MTSubCatsRecurse max_depth="3">
</li>
<MTSubCatIsLast></ul></MTSubCatIsLast>
</MTSubCategories>
を使用して、トップページおよびカテゴリー・アーカイブでの表示を 3.2 と 3.31 で比較してみます。
まず 3.2-ja-2 のサブカテゴリーリストとして表示した結果です。
トップページ:全カテゴリーが表示される |
「趣味」カテゴリー・アーカイブ:サブカテゴリーの「パソコン」カテゴリー以下を表示 |
「パソコン」カテゴリー・アーカイブ:サブカテゴリーの「mixi」「ブログ」カテゴリーを表示 |
「ブログ」または「mixi」カテゴリー・アーカイブ:表示なし |
次に全く同じタグを使用して、3.31-ja のサブカテゴリーリストとして表示した結果です。
トップページ:全カテゴリーが表示される |
「趣味」カテゴリー・アーカイブ:サブカテゴリーの「パソコン」カテゴリー以下を表示 |
「パソコン」カテゴリー・アーカイブ:サブカテゴリーの「mixi」「ブログ」カテゴリーを表示 |
「ブログ」または「mixi」カテゴリー・アーカイブ:全カテゴリーが表示される |
青色と赤色で示した文言からお分かりの通り、3.31-ja では最下層のサブカテゴリーで全カテゴリーが表示されます。
とりあえずシックス・アパートのフィードバックには報告させて頂きました。
3.31-ja で 3.2-ja-2 と同様の表示、つまり最下層のカテゴリー・アーカイブでサブカテゴリーリストを非表示にするためには、
lib/MT/Template/ContextHandlers.pm
に対して下記のパッチをあてると良いでしょう。
--- lib/MT/Template/ContextHandlers.pm.bak Thu Aug 17 01:54:30 2006
+++ lib/MT/Template/ContextHandlers.pm Thu Aug 17 01:55:33 2006
@@ -3937,7 +3937,7 @@
}
}
}
- if (!@cats) {
+ if (!@cats && ($ctx->{current_archive_type} ne 'Category')) {
# Otherwise, use the top level categories
@cats = MT::Category->top_level_categories($ctx->stash('blog_id'));
}
他に適切な対処があるようでしたらお許しください。
Posted by yujiro
- Movable Type 4 でテンプレート編集画面の内容が途中から消失する問題の対処
- Windows XP のローカルサーバ環境(ジャンクション利用)への Movable Type 4.1 のインストールで「mt-staticがみつかりません」という警告が表示される場合の対処
- Movable Type でサブドメインを利用する場合の設定
- Movable Type 4.1 でコメント投稿者情報が保存されない不具合について
- 「月別アーカイブリスト」が月別アーカイブで正常に表示されない不具合について
- Movable Type 4.0x でブログ記事へのリンクが post.html になる/ブログ記事のプレビューができない不具合について
- テンプレートの再構築で「モジュールというテンプレートが見つかりませんでした」というエラーになる場合の対処
- Movable Type 4 の管理画面で詳細メッセージのないエラーが発生する不具合について
- Movable Type 4 のデフォルトテンプレートで @import が表示される問題
- 検索結果のページ分割(3.3x 版)
- Movable Type でコメント投稿・トラックバックが重くなる事象を解消する
- HTTP/1.1 の「条件付きGET」を利用して PHP ファイルアクセスによるサーバ負荷を削減する
- MTEntries タグの lastn 属性と sort_order 属性(ascend)の同時指定が有効にならない件について
- Movable Type 3.x デフォルト・テンプレートのAtomフィードの不具合について
- Movable Type 3.3 で TypeKey サイン・イン時の JavaScript エラーを解消する
- カテゴリーリストで MTArchiveListHeader と MTArchiveListFooter が正常に動作しない問題
- Movable Type 3.3 の再構築で「<MTTagName>タグが閉じられていません」になる問題の対処(改)
- Movable Type の検索でエラーになる問題について
- コメント・プレビューで実体参照が無効になる不具合を解消する
トラックバックURL
コメント
サブカテゴリーのサブカテゴリーには全カテゴリーが表示される問題が発生し、このページに来ることができました。
しかし、lib/MT/Template/ContextHandlers.pmに上記のソースを加えてみるとエラーが表示されます。
私の方法が間違っているのでしょうか?
お忙しいとは思いますがご教授ください。
[1] Posted by 渡辺 : August 16, 2007 8:10 PM
コメントする
トップページ:全カテゴリーが表示される
「趣味」カテゴリー・アーカイブ:サブカテゴリーの「パソコン」カテゴリー以下を表示
「パソコン」カテゴリー・アーカイブ:サブカテゴリーの「mixi」「ブログ」カテゴリーを表示
「ブログ」または「mixi」カテゴリー・アーカイブ:

