質問 > フロント機能 > モバイルでのページ送り(<<前へ 1 | 2 | 3 | 4 | 5 次へ>>) |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
mamorca |
投稿日時: 2009/6/3 14:10
対応状況: −−−
|
新米 登録日: 2009/6/3 居住地: 投稿: 4 |
モバイルでのページ送り(<<前へ 1 | 2 | 3 | 4 | 5 次へ>>) EC-CUBEバージョン 2.3.2
PHPバージョン PHP 5.1.6 DBバージョン MySQL 5.0.45 お世話になります。 現在モバイルの商品一覧ページにて「次へ」や「前へ」だけでなく 直接ページ数のリンクを表記して移動できる機能を付けたいと考えています。 【このようなページ送り↓】 <<前へ 1 | 2 | 3 | 4 | 5 次へ>> PCでは上記の機能があるので モバイルに引用してみようと試みましたが うまくいかずに悩んでいます。 試みた方法は以下の通りです。 ------------------------------------------------------ 【PC商品一覧ページの記述より】 <!--件数ここから--> <!--{if $tpl_linemax > 0}--> <p class="pagenumberarea"> <span class="pagenumber"><!--{$tpl_linemax}--></span>件の商品がございます。 <!--{$tpl_strnavi}--> <!--{if $orderby != 'price'}--> <a href="java script:fnModeSubmit('', 'orderby', 'price')">価格順</a> <!--{else}--> <strong>価格順</strong> <!--{/if}--> <!--{if $orderby != "date"}--> <a href="java script:fnModeSubmit('', 'orderby', 'date')">新着順</a> <!--{else}--> <strong>新着順</strong> <!--{/if}--> </p> <!--{/if}--> <!--件数ここまで--> 上記記述から <!--{$tpl_strnavi}-->の部分を引用し、 /data/Smarty/templates/mobile/products/list.phpの 下部にある「次へ」「前へ」のページ送りの前に以下のように入れました。 <!--{$tpl_strnavi}--> <!--{if isset($tpl_previous_page|smarty:nodefaults) || isset($tpl_next_page|smarty:nodefaults)}--> <!--{if isset($tpl_previous_page|smarty:nodefaults)}--> <a href="<!--{$tpl_previous_page|escape}-->">前へ</a> <!--{/if}--> <!--{if isset($tpl_previous_page|smarty:nodefaults) && isset($tpl_next_page|smarty:nodefaults)}--> | <!--{/if}--> <!--{if isset($tpl_next_page|smarty:nodefaults)}--> <a href="<!--{$tpl_next_page|escape}-->">次へ</a> <!--{/if}--> ------------------------------------------------------ 以上のように表記すると 1 | 2 | 3 | 4 次へ>>というリンクは表示されるものの 1、2、3、4、次へ>>、どれを押しても 各カテゴリの商品一覧ページの1ページ目に飛んでしまいます。 (予め設置されてる「次へ」「前へ」のページ送りは機能します) PCでの記述を丸々引用しても機能しないのでは… とは予測していたのですが、なにせPHPの知識が乏しいもので 以上を試みるのが精一杯でした(苦笑) どなたかご教授の程、宜しくお願い致します! 長文失礼いたしました。 |
seasoft |
投稿日時: 2009/6/3 14:19
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7367 |
Re: モバイルでのページ送り(<<前へ 1 | 2 | 3 | 4 | 5 次へ>>) 実行した結果の HTML が貼ってあると、状況を想像しやすいです。
PCのコードは、JavaScript でページ番号をセットして、HTTP POST する実装だったと思います。 モバイルは $_REQUEST で受け取っていたと思ったので、POST でも GET でも受け取れると思いますので、当該箇所を、HTML でフォームを使って表現するか、リンクとして URL で表現する必要があると思います。
|
mamorca |
投稿日時: 2009/6/3 16:56
対応状況: −−−
|
新米 登録日: 2009/6/3 居住地: 投稿: 4 |
Re: モバイルでのページ送り(<<前へ 1 | 2 | 3 | 4 | 5 次へ>>) seasoft様
さっそくの返信&ご指摘ありがとうございます。 >実行した結果の HTML が貼ってあると、状況を想像しやすいです。 上記のご指摘のとおり、実行した結果のHTMLを貼らせていただきます。 ------------------------------------------------- 【質問で載せた記述の実行結果HTML】 <strong>1</strong> | <a href="/mobile/products/list.php?PHPSESSID=3gegt63ma9j9p9shs8eio71kr5" onclick="form1.mode.value=''; fnNaviPage('2'); return false;">2</a> | <a href="/mobile/products/list.php?PHPSESSID=3gegt63ma9j9p9shs8eio71kr5" onclick="form1.mode.value=''; fnNaviPage('3'); return false;">3</a> | <a href="/mobile/products/list.php?PHPSESSID=3gegt63ma9j9p9shs8eio71kr5" onclick="form1.mode.value=''; fnNaviPage('4'); return false;">4</a> <a href="/mobile/products/list.php?PHPSESSID=3gegt63ma9j9p9shs8eio71kr5" onclick="form1.mode.value=''; fnNaviPage('2'); return false;">次へ>></a> <a href="/mobile/products/list.php?category_id=42&orderby=&pageno=2&PHPSESSID=3gegt63ma9j9p9shs8eio71kr5">次へ</a> <br> ------------------------------------------------- 見づらくて申し訳ないです…。 加えて、ご指摘頂いた上に大変恐縮なのですが >POST でも GET でも受け取れる >HTML でフォームを使って表現する >リンクとして URL で表現 という方法が具体的にどの部分をどのように編集したらよいかが 全く解らない状態です。(申し訳ないです;;;) 情報が不足している点などありましたらまたご指摘願います。 知識や表記等、至らない点が多いかとは思いますが ご教授宜しくお願い致します。 |
seasoft |
投稿日時: 2009/6/3 17:11
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7367 |
Re: モバイルでのページ送り(<<前へ 1 | 2 | 3 | 4 | 5 次へ>>) 自分で実装するのは簡単なのですが、分かるように教えるとなるとなかなか難しいですね・・・
とりあえず、 ・HTTP のリクエストについて (主に GET と POST の違い) ・JavaScript の読解 ・モバイル固有の知識 (主に JavaScript の利用に関する制約) 辺りを勉強すると見通しがつくのかなと思います。 現状のコードですと、JavaScript が動作することを期待した実装になっていますが、多くのモバイル端末ではそれを期待するのは難しいと思います。
|
mamorca |
投稿日時: 2009/6/3 17:27
対応状況: −−−
|
新米 登録日: 2009/6/3 居住地: 投稿: 4 |
Re: モバイルでのページ送り(<<前へ 1 | 2 | 3 | 4 | 5 次へ>>) >自分で実装するのは簡単なのですが、分かるように教えるとなるとなかなか難しいですね・・・
確かにその通りだと思います(苦笑) ・HTTP のリクエストについて (主に GET と POST の違い) ・JavaScript の読解 ・モバイル固有の知識 (主に JavaScript の利用に関する制約) この点につきましては努力いたします(笑) ただ、どの部分(どこの階層?)のファイルの記述を 編集すればよいのかお教えいただけますと幸いです。 質問ばかりで申し訳ないです;;; |
seasoft |
投稿日時: 2009/6/3 17:38
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7367 |
Re: モバイルでのページ送り(<<前へ 1 | 2 | 3 | 4 | 5 次へ>>) テンプレートは、そのファイルで合っています。
ロジックを変更する必要が生じた場合は、 /data/class_extends/page_extends/products/LC_Page_Products_List_Ex.php /data/class/pages/products/LC_Page_Products_List.php あたりが主になると思います。
|
mamorca |
投稿日時: 2009/6/3 17:47
対応状況: −−−
|
新米 登録日: 2009/6/3 居住地: 投稿: 4 |
Re: モバイルでのページ送り(<<前へ 1 | 2 | 3 | 4 | 5 次へ>>) seasoft様
頂いたご指摘を参考に、試してみようと思います! 進展等ありましたら再度こちらに投稿させていただきます。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |