■ユーザーズフォーラム リニューアルのお知らせ
新規投稿は新ユーザーズフォーラムにお願いします。

Re: $this->BcBaser->element('global_menu')で展開されるリスト要素にてcurrentクラスが定義されないことがある

TeddyBuddy > Re: $this->BcBaser->element('global_menu')で展開されるリスト要素にてcurrentクラスが定義されないことがある @ 2014/8/14 13:00
引用:
ただ、できることなら少しでもURLを短くすっきりさせたいので、せめて「ホーム」だけでも"index"を追加しなくても上手くいくようにしたいなあと思います。
一応global_menu.phpファイルと睨めっこしてみたいと思います。


こんな感じで直してみました。

まず、「Home > システム設定 > メニュー管理 > メニュー一覧」にて該当するメニュー名のリンクURLを次のように設定しました。

○「ホーム」の場合(/)
○固定ページカテゴリーのインデックスページ(/[ページカテゴリー名] → /[ページカテゴリー名]/)
○ブログのインデックスページ(/[ブログアカウント名] → /[ブログアカウント名]/)

要は必ず"/"で終わるようにしました。

その上で、「Home > テーマ管理 > [Core] エレメントテンプレート 一覧」にてglobal_menu.phpファイルを[現在のテーマへコピー]し、そのファイルの42行目を下記のように変更しました。

【変更前】
if ($this->BcBaser->isCurrentUrl($globalMenu['Menu']['link'])) {
	$classies[] = 'current';
}
	↓
【変更後】
if ($this->BcBaser->isCurrentUrl($globalMenu['Menu']['link']) || (($this->BcBaser->isHome() || $this->BcBaser->isCategoryTop() || $this->BcBaser->isBlogHome()) && $this->BcBaser->isCurrentUrl($globalMenu['Menu']['link'] . 'index'))) {
	$classies[] = 'current';
}


これで当初のやりたかったことができるようになりました。
ログイン
ユーザー名:
パスワード:


  新規登録 / パスワード紛失

検索

facebook
フォーラムで悩みが解決した場合など、よかったら「いいね!」をポチっとクリックしてください!質問の回答者や開発者の励みになります

フォーラムガイド


関連リンク

オンライン状況
55 人のユーザが現在オンラインです。 (53 人のユーザが フォーラム を参照しています。)

登録ユーザ: 0
ゲスト: 55