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

カテゴリごとに異なるサイドバーを表示させたいがブログとメールフォームだけうまくいきません。

hataya > カテゴリごとに異なるサイドバーを表示させたいがブログとメールフォームだけうまくいきません。 @ 2010/12/28 18:13
はじめまして はたや です。

現在、自社のホームページをBaserCMSを利用して構築しております。

そのなかでページカテゴリ単位でサイドメニューを変更したいと考えており、既出のトピック「カテゴリーページごとに違うサブメニュー表示する」を参考に下記のように sidebar.ctp を編集することで、カテゴリごとにサイドバーを切り替えることができました。

しかし、ブログとメールフォームだけはこのやり方では制御できませんでした。
いずれも、下記コードにある"pageNo"に相当する値がないためではないかと思いますが、その解決策を見つけ出すことができずに、このフォーラムを頼ってみました。
(ブログは switch 〜 case 文 の default としたので結果的にうまくいっています)

よい解決策はありますでしょうか??

sidebar.ctp

<?php
/**
 * サイドバー
 *
 * TOPページは「TOPサイドバー(id3)」を表示
 * TOPページ以外は「標準サイドバー(id1)」を表示
 * 上記以外(=ブログ)は「ブログサイドバー(id2)」を表示
 *
 * 〜 未解決 〜
 * 問い合わせページは「Mailサイドバー(id4)」を表示
 *
 */
?>
<div id="beta">
                <?php
                $pageNo = '';
                if(isset($page)){
                	if($baser->isTop()){
                                $pageNo = "1";
                        } else {
                        $pageCategory = $page->getCategory();
                        $pageNo = $pageCategory['id'];
                        }
                }
                
                switch($pageNo){
                case 1:
                	$baser->element('widget_area',array('no'=>3));
                	break;
                case 2:
                case 3:
                case 4:
                case 5:
                case 6:
                	$baser->element('widget_area',array('no'=>1));
                	break;
                default:
                	$baser->element('widget_area',array('no'=>2));
                }
                ?>
</div>



〜環境〜
OSの種類:CentOS5.5
PHPのバージョン:5.1.6

BaserCMSのバージョン:1.6.7.1
スマートURLの利用: ON
設置フォルダ: サブフォルダ
利用しているデータベース: CSV
PHPスキル(自己評価): E

〜環境〜
-----
■ BaserCMSのバージョン:4.0.0
■ 設置フォルダ:ドキュメントルート
■ 利用しているデータベース:CSV
■ PHPスキル(自己評価): E

ログイン
ユーザー名:
パスワード:


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

検索

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

フォーラムガイド


関連リンク

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

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