
ページごとにレイアウトを切り替える方法
本日は、便利な関数を使ったプチカスタマイズを2つご紹介いたします。<?php $this->layout = 'レイアウトファイル名' ?>
固定ページの下にあるコード欄にこの記述を入れるだけで反映されます。
例えば、
そのページだけTOP画像を変えたい。
そのページだけコメントを受け付けたい
そのページだけサイドメニューの配置を変えたい
など・・・工夫次第でなんでも出来ちゃいます。
実際に、上記の内容を当サイト内でお見せします。
→ デモページ
いかがでしょうか。
仕組みが分かるとサイト作りがとても楽しくなると思います。 もちろんこのテーマ(ratio_3_2)だけに限らず、他のテーマでも使える便利な関数です(^^)/
固定ページ毎にレイアウトを変える方法は、デモページで理解して頂けたかな?と思いますので^^;
もうひとつ!
私が利用している方法をご紹介いたします。
ブログトップページ(/news/index) と 記事(single.php)でレイアウトを変える方法
通常、ブログトップページのレイアウト(サイドメニュー)が、記事のレイアウト(サイドメニュー)になると思います。これを変えたい!
と思ったのがきっかけです。
例えば・・・
記事ページ(/news/archives/1)の横に最新記事を10件表示させる(させたい)とします。

そうすると・・・
ブログのトップページ(news/index)にも表示されてしまいます。(え?)

これだと、全く同じ内容になるじゃないですか・・・(あかんやん)
でも、個別記事のサイドメニューには最新記事一覧を表示させたい・・・(切実に)
ここから地獄の始まりでした。。。(大げさ)
この関数の存在も利用もしていたのですが、どうやったら良いかどうか・・・そこにハマりました。(うんうん)
という事で、前置きはおしまい。
ご紹介いたします。
実践編
手順を文章で表すと・・・
1.新規ウィジェットを作成
2.ブログindex 用のレイアウトファイルを作る
3.レイアウトファイル内のウィジェット番号を 1.で作成した番号に書き換える
4.index.php ファイルに作成したファイルを上記の関数で読ませる。
これだけでした。(は・・・はい。)
具体的な手順と解説
1.新規ウィジェットを作成します。
ダッシュボード → ウィジェット管理 → ウィジェットエリア一覧 → ウィジェットエリア新規追加
分りやすい名前で保存

ウィジェット番号を覚えておきます。

当サイトでは13 です。
2.ブログレイアウトをコピーする
初期の状態では blog.php ファイルがデフォルトになっていますので、それとは別にblog.php をコピーしたファイルを作ります。
中身を開いて、サイドメニュー(ウィジェット)を指定している部分を探します。
3.ウィジェット番号を書き換える
デフォルトでは No.2 というウィジェットを読んでいますので、それを作成したウィジェット番号に書き換えます。
コード(blog.phpの該当部分)
<!-- /.col-main --></div>
<div class="col-sub">
<div class="widget-area-wrapper">
<?php
// widget: blog sidebar No.2
$this->Ratio32->widget_edit_link(2);
$this->BcBaser->widgetArea(2);
?>
<!-- /.widget-area-wrapper --></div>
<!-- /.col-sub --></div>
<!-- /.row-2col --></div>
4.ブログトップページだけに読み込ませます。
レイアウトテンプレート一覧 → コンテンツ一覧 → Blog/ → default/ → index.php
index.php を開きます。
一番上に呼び出すコードを配置しました。 上から読み込んでいくのでこの位置が良いかと思います。

これで ブログトップページのみレイアウトが適用されます。
コード
<?php $this->layout = 'blog_index' ?>
当サイトで挙動をご確認下さい。(PC推奨)
ブログトップページ(index)
http://ratio32.msstyle.jp/news/ブログ記事ページ(このページ)
http://ratio32.msstyle.jp/news/archives/19サイドメニューの配置が変わっているのが確認できると思います。
その他の活用事例
→ 個別のページで <link rel=”canonical”> を使用したい→ フォーラムの検索結果
最後に・・・
この様にbaserCMS は、柔軟に思い通りのレイアウトや設定が可能です。特にこのテーマは、殆どの部分がウィジェットで構成されています。順番の入れ替えやウィジェットのON/OFFが簡単に行なえます。共通部分もウィジェットで管理すれば、画像の差し替えや広告・バナーなども一回の作業で、全ページに反映できるのでとても便利です(^^)/
他にも良い使い方があればアドバイスをお願い致します。
お役に立てましたら、いいね!&シェアして頂けると幸いです。
ご覧頂きありがとうございます。