質問 > フロント機能 > ランキングの表示について |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
fukap |
投稿日時: 2011/12/9 8:22
対応状況: −−−
|
仙人 ![]() ![]() 登録日: 2009/7/7 居住地: 滋賀県 投稿: 907 |
Re: ランキングの表示について 今回のカスタマイズでテンプレートファイル(ranking.tpl)を作っておられませんか?
参照記事 http://www28.atwiki.jp/lucier/pages/47.html の中段やや下、 「※ランキング用の画像は別途用意する必要あり。」という文言の下に tplファイルのソースが書かれていると思います。 説明にファイル名の指定がありませんが、このソースで、 data/Smarty/templates/default/frontparts/bloc/ranking.tpl という新規ファイルを作成する必要があります。 そのテンプレートファイルのコード内で、HTMLタグの画像出力部を修正してみてはどうですかとご提案したわけです。 |
gabriel |
投稿日時: 2011/12/9 13:54
対応状況: −−−
|
常連 ![]() ![]() 登録日: 2011/8/18 居住地: 投稿: 35 |
Re: ランキングの表示について お世話になります。
data/Smarty/templates/default/frontparts/bloc/ranking.tpl については、すでに作成しておりまして、そこの画像出力の部分について、おっしゃるように変更してみたのですが、何も変化がありませんでした。 他に何か変更する部分などございませんでしょうか? |
fukap |
投稿日時: 2011/12/9 16:25
対応状況: −−−
|
仙人 ![]() ![]() 登録日: 2009/7/7 居住地: 滋賀県 投稿: 907 |
Re: ランキングの表示について 表示されないのは画像だけでしょうか。
それとも、順位や商品名も表示されていないでしょうか。 また、テンプレート側(ranking.tpl)の1行目に以下のコードを書くと、何が出力されてきますか?
あるいは、参考URL( http://www28.atwiki.jp/lucier/pages/47.html )の一番最後に、 「DBに値を追加する。」とありますが、この作業を行われましたか? |
gabriel |
投稿日時: 2011/12/10 18:27
対応状況: −−−
|
常連 ![]() ![]() 登録日: 2011/8/18 居住地: 投稿: 35 |
Re: ランキングの表示について 返信が遅くなり申し訳ありません。
DBについては追加しています。 そして、ranking.tplについては <pre> <!--{$arrRanking|@var_dump}--> </pre> <!--{if count($arrRanking) > 0}--> <h2> <img src="<!--{$TPL_DIR}-->img/side/title_ranking.jpg" width="166" height="35" alt="ランキング" /> </h2> <div id="rankingarea"> <ul> <!--{foreach from=$arrRanking key=myId item=i}--> <li> <a href="<!--{$smarty.const.P_DETAIL_URLPATH}--><!--{$i.product_id|u}-->"> <img src="<!--{$smarty.const.ROOT_URLPATH}-->resize_image.php?image=<!--{$i.main_list_image|sfNoImageMainList|h}-->&width=80&height=80" alt="<!--{$i.name|h}-->" /> </a> <!--{assign var=rank value=$myId+1}--> <span><!--{$rank}-->位:<!--{$i.name}--></span> </a> </li> <!--{/foreach}--> </ul> </div> <!--{/if}--> という記述をしているのですが、どこか間違いはありませんか?? ちなみに表示は カード 1位:カード カード2 2位:カード2 というような表示になっています。 リンクをクリックすると、Notfoundと表示されてしまいます。 |
fukap |
投稿日時: 2011/12/10 19:00
対応状況: −−−
|
仙人 ![]() ![]() 登録日: 2009/7/7 居住地: 滋賀県 投稿: 907 |
Re: ランキングの表示について
は、PHPが保持している $arrRanking の中身を確かめるためのコードです。 ランキングを表示するように設定したページをブラウザから表示させて、 どんな値が出力されるか確認してみてください。 そこに、product_id や main_list_image の値が正常に出力されていればテンプレート側に問題があるでしょうし、 出力されていなければPHP側に問題があると思われます。 なお、<pre>〜</pre> は出力される値を確認したら、不要なので消してしまってください。 |
gabriel |
投稿日時: 2011/12/10 23:17
対応状況: −−−
|
常連 ![]() ![]() 登録日: 2011/8/18 居住地: 投稿: 35 |
Re: ランキングの表示について お返事ありがとうございます。
テンプレートというのは <!--{if count($arrRanking) > 0}--> <h2> <img src="<!--{$TPL_DIR}-->img/side/title_ranking.jpg" width="166" height="35" alt="ランキング" /> </h2> <div id="rankingarea"> <ul> <!--{foreach from=$arrRanking key=myId item=i}--> <li> <a href="<!--{$smarty.const.DETAIL_P_HTML}--><!--{$i.product_id}-->"> <img src="<!--{$smarty.const.IMAGE_SAVE_URL|sfTrimURL}-->/<!--{$i.main_list_image}-->" width="130px" alt="<!--{$i.name}-->"> <!--{assign var=rank value=$myId+1}--> <span><!--{$rank}-->位:<!--{$i.name}--></span> </a> </li> <!--{/foreach}--> </ul> </div> <!--{/if}--> のことでしょうか? 先のメッセージで表示される状態は書きましたが、 一応、ブラウザ側では、product_idやmain_list_image(画像はないけれど・・・)が表示されている様に思われるのですが・・・。 |
fukap |
投稿日時: 2011/12/12 8:47
対応状況: −−−
|
仙人 ![]() ![]() 登録日: 2009/7/7 居住地: 滋賀県 投稿: 907 |
Re: ランキングの表示について 引用:
テンプレートというのは その理解で合っていますよ。 パッと見た感じ、特に問題はなさそうなので、 $arrRanking の中に入っているデータが知りたかったわけです。
をテンプレートに記述して、ブラウザから(ここがポイント!)見ると、 ページ上に文字列がうじゃうじゃっと表示されるので、 それが $arrRanking の中身なんですね。 var_dump については、ネットで検索するとたくさん情報がありますので、 一度勉強されるのをお薦めします。 また以下も参考にされると良いと思います。 http://xoops.ec-cube.net/modules/tinyd0/index.php?id=8 画像だけが出てないのなら、ひょっとしてGDが入ってなかったりするのかな。 |
habu |
投稿日時: 2011/12/12 10:27
対応状況: −−−
|
長老 ![]() ![]() 登録日: 2006/9/15 居住地: 投稿: 282 |
Re: ランキングの表示について 以下の通り変更すれば、
画像と、リンク先の問題が解消されると思います。 ・「DETAIL_P_HTML」→「P_DETAIL_URLPATH」 ・「IMAGE_SAVE_URL」→「IMAGE_SAVE_URLPATH」 #ちなみにですが、 定数名を調べるためには、商品一覧画面のテンプレート (data/Smarty/templates/default/products/list.tpl) の中身を参考にしました。 同じような事をしている部分を見てみると参考になる場合が多いですよ(^o^)
|
gabriel |
投稿日時: 2011/12/12 16:26
対応状況: −−−
|
常連 ![]() ![]() 登録日: 2011/8/18 居住地: 投稿: 35 |
Re: ランキングの表示について お世話になります。
お二人の意見を参考にさせて頂きましたが、変化がありません。。。 中身は現状 <pre> <!--{$arrRanking|@var_dump}--> </pre> <!--{if count($arrRanking) > 0}--> <h2> <img src="<!--{$TPL_DIR}-->img/side/title_ranking.jpg" width="166" height="35" alt="ランキング" /> </h2> <div id="rankingarea"> <ul> <!--{foreach from=$arrRanking key=myId item=i}--> <li> <a href="<!--{$smarty.const.P_DETAIL_URLPATH}--><!--{$i.product_id|u}-->"> <img src="<!--{$smarty.const.IMAGE_SAVE_URLPATH}-->resize_image.php?image=<!--{$i.main_list_image|sfNoImageMainList|h}-->&width=80&height=80" alt="<!--{$i.name|h}-->" /> </a> <!--{assign var=rank value=$myId+1}--> <span><!--{$rank}-->位:<!--{$i.name}--></span> </a> </li> <!--{/foreach}--> </ul> </div> <!--{/if}--> このようになっています。 ちなみに、ランキングで商品名が出ている部分をクリックすると Not Found The requested URL /DETAIL_P_HTML1 was not found on this server. と出てしまいます。 他に何かするべきことがあるでしょうか? (他のファイルに何かが足りない等) また宜しくお願い致します。 |
fukap |
投稿日時: 2011/12/12 18:12
対応状況: −−−
|
仙人 ![]() ![]() 登録日: 2009/7/7 居住地: 滋賀県 投稿: 907 |
Re: ランキングの表示について habu様からもご指摘のあった DETAIL_P_HTML がエラーに出ていますね。
張っておられるテンプレートファイルのコードを見る限り、 DETAIL_P_HTML は含まれていないようですが、 再度テンプレートファイルに DETAIL_P_HTML が含まれていないか確認してみてください。 あるいは修正したつもりだけど、ranking.tpl とは別のファイルを修正していたということはありませんか? |
« 1 2 (3) 4 » |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |