質問 > フロント機能 > デフォルトであるブロックのテンプレート内でのPageLayout.page_id指定 |
フロント機能
フラット表示 | 前のトピック | 次のトピック |
投稿者 | スレッド |
---|---|
senchang |
投稿日時: 2010/3/3 18:59
対応状況: −−−
|
半人前 登録日: 2010/3/3 居住地: 東京 投稿: 26 |
デフォルトであるブロックのテンプレート内でのPageLayout.page_id指定 初めまして。いつもここで勉強させて頂いております。
やや急ぎの為、投稿させて頂きました。 デフォルトで存在するブロック(best5.tpl等)の テンプレートファイル内で、 <!--{if $arrPageLayout.page_id == "●"}--> による表示の切り替えが出来ません。 今回、おすすめ商品のブロックを商品詳細ページのみ別のレイアウトで表示させたいと考えております。 具体的には、下記のような事を試してみました。 <!--{if $arrPageLayout.page_id == "3"}--> <div id="recomendarea" style="background:#f00;"> ・ ・ ・ (以下デフォルトのソース) <!--{else}--> <!--▼おすすめ情報ここから--> <!--{if count($arrBestProducts) > 0}--> <div id="recomendarea"> ・ ・ ・ (以下デフォルトのソース) <!--{/if}--> 商品詳細ページでのみ、おすすめ商品のブロック部分の背景が真っ赤になれば成功なのですが、 商品詳細でもそれ以外のページでも変化がありませんでした。 <!--{if $arrPageLayout.page_id == "●"}-->を使っての 表示切替は、以前site_frame.tpl内の<title>〜</title>などで 使用しておりましたが、ブロック内での使用は出来ないのでしょうか? また、 <!--{assign var=sample value="`$smarty.const.URL_DIR`user_data/sample.php"}--> <!--{if $smarty.server.PHP_SELF==$sample}--> 上記のような指定方法であればブロックに対しても有効でした。 さすがに商品詳細ページ一つ一つに名前を付けて指定するのは、 現実的ではないと思っておりますので、 <!--{if $arrPageLayout.page_id == "3"}--> のように 「商品詳細ページのみ」での指定方法がないかと苦悩しております。 どなたか、ブロックについて上記のような使い方をしたことがある方や、 すぐに原因がお分かりになる方がいらっしゃいましたらご助力頂けますと幸いでございます。 何卒、宜しくお願い申し上げます。 EC-CUBEバージョン 2.4.1 PHPバージョン PHP 5.2.11 DBバージョン MySQL 5.0.33 |
フラット表示 | 前のトピック | 次のトピック |
題名 | 投稿者 | 日時 |
---|---|---|
» デフォルトであるブロックのテンプレート内でのPageLayout.page_id指定 | senchang | 2010/3/3 18:59 |
Re: デフォルトであるブロックのテンプレート内でのPageLayout.page_id指定 | seasoft | 2010/3/5 0:17 |
Re: デフォルトであるブロックのテンプレート内でのPageLayout.page_id指定 | senchang | 2010/3/5 18:26 |
Re: デフォルトであるブロックのテンプレート内でのPageLayout.page_id指定 | DELIGHT | 2010/3/6 12:19 |