「オートナビから除く」設定とその子ページについて

2011年2月3日 at 10:16

バグ報告というより仕様変更の提案かも...

子ページを持つ親ページだけを「オートナビから除く」設定をした場合、
子ページだけがオートナビリストにリストアップされます。

例えば以下のような構成のページがあった場合、
A┐
 ├a1
 └a2
B┐ <-このページだけ「オートナビから除く」設定
 ├b1
 └b2

オートナビリストは以下の構成にります。
A┐
 ├a1
 ├a2
 ├b1
 └b2

本来はBページ下にあるb1,b2が、Aページ下にあるようなリストとなってしまいます。
この場合、b1,b2はリストアップしないのが適切ではないのかと思います。

そこで、親ページがオートナビから除かれてる子ページは、自動的にオートナビから除く
ような仕様の変更を提案したいのですが、いかがでしょうか。

Re: 「オートナビから除く」設定とその子ページについて

2011年2月3日 at 10:49
おっしゃるとおりだと思います。ぜひ提案してください。

実は自分も先日、その問題で困りました。
仕方がないので、autonavのコードをいじって一応回避させました。
(exclude_navの属性を持っている場合、ulにstyleで無理矢理display:none;を加えて、liも含めてすべて不可視にする、という手です。カスタムテンプレートだったので、直接いじりましたが、コアのオートナビをいじるならオーバーライドしなくてはいけませんね。)

autonavのtemplateのview.php内の
$_c->getCollectionAttributeValue('exclude_nav')
で判別していますので、
その判別式のあたりをいじれば、一応の回避は出来ました。
ご参考までに。
 

Re: Re: 「オートナビから除く」設定とその子ページについて

2011年2月6日 at 20:40
ページ属性はページ単位のものなので、こうなるのは仕方ないのかなーと思っています。
子ページまで一括でページ属性を変更する手段があれば良いなとは思っています。
そんなアドオンあるのかな。作るほうが早いのか。