テーマ「シンプルレストラン」のRESTAURANT NEWSやウェジェットを他のページにも表示させたい
xiuming > テーマ「シンプルレストラン」のRESTAURANT NEWSやウェジェットを他のページにも表示させたい @ 2012/6/15 19:32 |
---|
スマートURL: OFF
設置フォルダ: /home/sites/heteml/users50/c/-/p/******/web/*****t/basercms/ セーフモード:Off データベース: MySQL baserCMSバージョン: 2.0.0 CakePHPバージョン: 1.2.10 テーマ「シンプルレストラン」をダウンロードして、これをもとに色々構築を試みております。 ウェジェット機能があり、facebookやtwitter、リンク項目がありますが、 シンプルレストランのTOPにはウェジェットが表示されておりますが、会社案内やお問い合わせのページの右側にも RESTAURANT NEWSやウェジェットを表示させたいと思います。 グローバルメニューバーやヘッダー、フッターが常にどのページにも表示されているから理論上はできるかと 思いますが、現段階でcssのみでしか他のページを編集出来ておりません。 他のページに <!-- begin ThreeColumn --> <div id="ThreeColumn"> <div id="News1" class="side-box"> <h2><?php $bcBaser->img('head_top_restaurant_news.gif', array('alt'=>'RESTAURANT NEWS')) ?></h2> <?php $bcBaser->blogPosts('news', 5) ?> <div class="more"> <?php $bcBaser->link($bcBaser->getImg('btn_more.gif', array('alt'=>'詳細を見る', 'class'=>'btn')), '/news/index') ?> </div> </div> <?php $bcBaser->element('widget_area',array('no'=>$widgetArea)) ?> </div> <!-- end ThreeColumn --> を単純に張り付ければよいのかなと 思ってしまうのですが、どうもそうではなさそうで、 そこから行き詰っております。 フォーラムを読んでもそれらしき箇所がないので、 どなたかご教示いただければ幸いです。 |
arata > Re: テーマ「シンプルレストラン」のRESTAURANT NEWSやウェジェットを他のページにも表示させたい @ 2012/6/16 0:27 |
---|
xiumingさん、こんにちは!
以下の手順でやってみてくださいね。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ■ ウィジェット管理 -> 「標準サイドバー」を開く ■ 「PHPテンプレート」ウィジェットを右側の利用中ウィジェットの方にドラッグ&ドロップしますん ■ 「PHPテンプレート名」の欄に news と入力してください ■ 「利用する」にチェックを入れて保存します 次はファイルを作成します。 ■ 先のウィジェットに書かれてたように、以下のパスにPHPファイルを作って置きます。 /app/webroot/themed/simplerest/elements/widgets/news.php 中身は以下。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 以上で終了でございます! ちょっとやってみてくださいね丶(・ω・)ノ ■ 不明点解消できるかも。逆引きガイドもあります baserCMS公式wiki |
goichi > Re: テーマ「シンプルレストラン」のRESTAURANT NEWSやウェジェットを他のページにも表示させたい @ 2012/6/16 0:32 |
---|
こんにちは(^^
引用: を単純に張り付ければよいのかなと ウィジェトや新着情報(ブログ)の記事リストの表示は、 おっしゃる通り、どこのページからでも呼び出せると思います。 試しにページ編集の編集エディタ部分で(ソースモードにして)、 呼び出したい箇所に下記のヘルパーを記述してみてください。 (もし呼び出せないとすると、どこかに問題があると思います。 管理画面のシステム管理で、開発モードをデバッグモードにしてみると、 何かエラー表示などが出てくるかもしれません。) ■ブログ(例:'news'という名前のブログを5件取得する)
■ウィジェット(ウィジェットNO.1を表示する)
ブログ名やウィジェットのNo.を書き換えれば、該当するデータが表示されると思います。 ヘルパーの詳細はリファレンスで確認してみてください。 引用: グローバルメニューバーやヘッダー、フッターが常にどのページにも表示〜〜 グローバルメニューやヘッダー、フッターなどと同じように共通して利用するのであれば、 レイアウトファイルに記述するといいかも知れません。 (場所は「/app/webroot/themed/(テーマ名)/layouts/default.php」です) ちなみに、というか蛇足ですが レイアウトやテーマについての基本的な考え方は、 手前味噌で恐縮なのですが、この間、ちょうど自分のブログに書いたところですので、 もし良かったら眺めてみてください(><) テーマの基本 |
xiuming > Re: テーマ「シンプルレストラン」のRESTAURANT NEWSやウェジェットを他のページにも表示させたい @ 2012/6/18 15:51 |
---|
>goichiさん、>arataさん こんにちは
アドバイス頂きありがとうございました。 <!--begin ThreeCulumn -->〜<!--end ThreeCulumn --> の間を切り取り、elemetsフォルダの中にright.phpと名前を付けて保存し、 default.phpには <?php $bcBaser->element('right') ?> と記述しました。 それでもTOPページしか表示されませんでした。 色々試行錯誤して、どうも <?php if($bcBaser->isTop()): ?> <?php endif ?> があやしいと思い、削除したところ、 全てのページにウェジェットが表示されるようになりました。 となると疑問がでてきますが、 <?php if($bcBaser->isTop()): ?>〜<?php endif ?>は この間に入るものをTOPページにのみ表示させるという記述なのでしょうか? また、やり方によってはこのページは、Aのウェジェットを、 違うページにはBのウェジェットをといった具合に指定が出来るのでしょうか? |
goichi > Re: テーマ「シンプルレストラン」のRESTAURANT NEWSやウェジェットを他のページにも表示させたい @ 2012/6/18 18:27 |
---|
xiuming > Re: テーマ「シンプルレストラン」のRESTAURANT NEWSやウェジェットを他のページにも表示させたい @ 2012/6/19 9:41 |
---|
>goichiさん 情報ありがとうございました。
ウェジェットと他のページにも表示させる問題は解決しましたが、 isTop()の質問はスレッド違いになってしまいますので打ちきります。 ありがとうございました。 |