バージョン選択

フォーラム

メニュー

オンライン状況

64 人のユーザが現在オンラインです。 (52 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 64
もっと...

サイト内検索

質問 > 管理機能 > モバイルで商品一覧画像を表示したい

管理機能

新規スレッドを追加する

スレッド表示 | 古いものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
tonton
投稿日時: 2009/2/2 17:36
対応状況: −−−
仙人
登録日: 2008/8/14
居住地:
投稿: 437
Re: モバイルで商品一覧画像を表示したい
>nanasess様
>homan様
色々ヒントを頂き、ありがとうございます。

homanさんに教えていただいたように、

/html/require.php一番下あたり
--------
header("Location: ". SC_Utils_Ex::sfRmDupSlash($url . $path));
exit;
--------

--------
/* resize_image.phpのときだけ、リダイレクト解除 */
if(!preg_match("/resize_image.php/i", $path)) {
header("Location: ". SC_Utils_Ex::sfRmDupSlash($url . $path));
exit;
}
--------
に変更で、リサイズイメージを使用しても画像が表示できるようになりました。
いつもながら、ありがとうございます。

実は、フォーラムで紹介いただいたステータスを利用して新着商品やオススメ商品フラグがたっているものをいくつか表示するブロックを使用させて頂いておりまして、そこへ画像を出したかったのですが、こちらのソースを利用し、オススメ&新着商品ブロックをトップページにインクルードすることで、オススメ商品がアクセスごとにランダムにトップページに表示される、ということが携帯でもできるようになりました。

カスタマイズしていくとPCで動作できていても携帯では?となってしまって、困ることも多くて、この件は応用もできそうな内容で、解決できて、本当にうれしいです。助かりました!
ありがとうございます。

homan
投稿日時: 2009/2/2 16:09
対応状況: −−−
仙人
登録日: 2007/7/2
居住地: 宮崎県宮崎市
投稿: 633
Re: モバイルで商品一覧画像を表示したい
引用:

nanasessさんは書きました:
homan さん,

引用:

と、$smarty.const.SITE_URLで指定するのがミソだったような気がします。


憶測ですが, 上記ならモバイルの UA でもリダイレクトにならず, 上手くいくような気がします.

最近は PHP から思いっきり離れているので, はずしていたらすみません.



はずしてませんよ おっしゃる通りでした。
ただ、上記でもうまくいかなかったので、結局/html/require.phpで強制的に転送しないようにしたらうまく行きました。(どこかで不具合が発生する可能性も無きにしも非ずですが・・いまのところ不具合の報告はありません)

書き込みが流れてしまったので、念のため解決するかもしれない書き込みのリンクを張っておきます。
http://xoops.ec-cube.net/modules/newbb/viewtopic.php?viewmode=thread&topic_id=1838&forum=11&post_id=13040#forumpost13040


----------------
このコミュニティでの投稿はボランティアの範囲に留めさせていただいています。個別の相談やカスタマイズは有償にて承っておりますのでご相談下さい。

[url=http://www.eccube-school.jp/]EC-CUBE

nanasess
投稿日時: 2009/2/2 16:06
対応状況: −−−
登録日: 2006/9/9
居住地:
投稿: 2334
Re: モバイルで商品一覧画像を表示したい
tonton さん,

引用:

>1.x と基本的なロジックは変更していないので, 1.x の resize_image.php を移植してしまえば直るかもしれません.

1.4.7のソースを持ってきてみましたが、そのまま持ってきただけでは、やはりダメのようで、PCサイトでも画像自体が表示されなくなりました。


1.x の resize_image.php は 2.x では存在しない conf.php や glib.php を require しているので, このあたりを修正しなければいけません.

# ちょっと動作環境を用意できないので憶測ですみません.

引用:

私のサイトでは、携帯サイトは、XHTMLでcontent typeをapplication/xhtml+xmlとしているので、その影響もあるのかも、などと色々小さく変更したりしてみましたが、この部分は今のところダメみたいでした;


ここの関連は薄いのではないでしょうかねぇ...

引用:

今の段階では、firefoxのエミュレータで見ているのですが、ユーザーエージェントを携帯に変更すると、リサイズイメージが利かなくなります。


resize_image.php から呼んでいる gdthumb.php は, UA を見ていないので, 他のところに原因がありそうです.

html/require.php で, モバイルの UA の場合にリダイレクトさせているので, このあたりが怪しいですね...

html/require.php に依存しない resize_image.php を用意してあげたらいかがでしょう?


homan さん,

引用:

と、$smarty.const.SITE_URLで指定するのがミソだったような気がします。


憶測ですが, 上記ならモバイルの UA でもリダイレクトにならず, 上手くいくような気がします.

最近は PHP から思いっきり離れているので, はずしていたらすみません.

homan
投稿日時: 2009/2/2 15:16
対応状況: −−−
仙人
登録日: 2007/7/2
居住地: 宮崎県宮崎市
投稿: 633
Re: モバイルで商品一覧画像を表示したい
(うるおぼえで恐縮ですが)
以下のようにやったら、うまくいったような気がします。

resize_image.phpを1系から移植や2系のPC側のものをコピーしてmobile/以下に置いたりせず、ただ単にモバイル側のproducts/list.tplで商品情報ループ表示の中で、

<img src="<!--{$smarty.const.SITE_URL}-->resize_image.php?image=<!--{$image_path|sfRmDupSlash}-->&width=50&height=50" alt="<!--{$arrProducts[cnt].name|escape}-->" />

と、$smarty.const.SITE_URLで指定するのがミソだったような気がします。
はずれてたらごめんなさい。

(過去の書き込みをみたら、同じこと書いてだめだった様な事が書いてありましたね・・・うまくいかない場合は時間がある時にちょっと過去の記憶をたどってみます。


---------------
追記・・・思い出しました!

上記のようにモバイル側のlist.tplに記述した上で、
/html/require.php一番下あたりの


    header("Location: ". SC_Utils_Ex::sfRmDupSlash($url . $path));
    exit;


を以下に変更します。


    /* resize_image.phpのときだけ、リダイレクト解除 */
    if(!preg_match("/resize_image.php/i", $path)) {
      header("Location: ". SC_Utils_Ex::sfRmDupSlash($url . $path));
      exit;
    }


ちょっと強引ですが、resize_image.phpにアクセスがあった場合だけリダイレクトしないようにしています。


----------------
このコミュニティでの投稿はボランティアの範囲に留めさせていただいています。個別の相談やカスタマイズは有償にて承っておりますのでご相談下さい。

[url=http://www.eccube-school.jp/]EC-CUBE

tonton
投稿日時: 2009/2/2 14:45
対応状況: −−−
仙人
登録日: 2008/8/14
居住地:
投稿: 437
Re: モバイルで商品一覧画像を表示したい
>nanasess様

こんにちは。レスありがとうございます。

>1.x と基本的なロジックは変更していないので, 1.x の resize_image.php を移植してしまえば直るかもしれません.

1.4.7のソースを持ってきてみましたが、そのまま持ってきただけでは、やはりダメのようで、PCサイトでも画像自体が表示されなくなりました。

リサイズイメージへのパスは正常に貼られているようなので(=PCサイトでのパスと同じ。サイズのみ変更)もしかしたら、携帯ではリサイズイメージは使えないのだろうか?と推測しているのですが、、、そんなことはないですよね?

う〜む。
とりあえず、携帯での一覧ページ画像表示は、小さいほうの登録画像をテンプレート内でwidth指定して表示させましたが、これだと容量が減るわけではないので、やはりリサイズイメージが使えたほうがありがたいです。

私のサイトでは、携帯サイトは、XHTMLでcontent typeをapplication/xhtml+xmlとしているので、その影響もあるのかも、などと色々小さく変更したりしてみましたが、この部分は今のところダメみたいでした;

今の段階では、firefoxのエミュレータで見ているのですが、ユーザーエージェントを携帯に変更すると、リサイズイメージが利かなくなります。

困りました;(^^;
nanasess
投稿日時: 2009/2/2 12:00
対応状況: −−−
登録日: 2006/9/9
居住地:
投稿: 2334
Re: モバイルで商品一覧画像を表示したい
憶測ですが, 2.x では複雑に require してるのが原因かもしれません.

1.x と基本的なロジックは変更していないので, 1.x の resize_image.php を移植してしまえば直るかもしれません.

未検証ですので, はずしていたらスミマセン.
tonton
投稿日時: 2009/2/2 1:13
対応状況: −−−
仙人
登録日: 2008/8/14
居住地:
投稿: 437
Re: モバイルで商品一覧画像を表示したい
すみません。教えてください。
この件↓って解決していますでしょうか?

>1系のresize_image.phpで縮小した場合は、きちんと画像フォーマット(MIMEタイプ)が返ってきているようですが、2系(僕が確認したのは2.2.0β)では画像形式が判明せず、「使用不可」という感じになっています。


現在モバイルサイトをコーディングしているのですが、リストとオススメ商品に商品画像を出そうとして躓いていまして、いくつか試しているのですが・・・


homan
投稿日時: 2008/5/26 21:24
対応状況: −−−
仙人
登録日: 2007/7/2
居住地: 宮崎県宮崎市
投稿: 633
Re: モバイルで商品一覧画像を表示したい
なんとなく原因がわかりました。解決はしていませんが・・・。

1系のresize_image.phpで縮小した場合は、きちんと画像フォーマット(MIMEタイプ)が返ってきているようですが、2系(僕が確認したのは2.2.0β)では画像形式が判明せず、「使用不可」という感じになっています。

「使用不可」でもPCの場合は表示されますが、携帯ではうまく表示されないようですね。
とりあえず、widthを指定して強制縮小する方法でなら正常に表示されますが、画像の容量は元のままなので、モバイル環境にはつらいですね。。

1系でどうにかうまくいっているようなので、
2系/data/class/pages/LC_Page_ResizeImage.php、/data/module/gdthumb.php辺りを見直してみるとなにか分かるかもしれません。



----------------
このコミュニティでの投稿はボランティアの範囲に留めさせていただいています。個別の相談やカスタマイズは有償にて承っておりますのでご相談下さい。

[url=http://www.eccube-school.jp/]EC-CUBE

at_cube
投稿日時: 2008/5/1 16:19
対応状況: −−−
新米
登録日: 2008/4/25
居住地:
投稿: 1
Re: モバイルで商品一覧画像を表示したい
引用:

<img src="<!--{$smarty.const.IMAGE_SAVE_URL|sfTrimURL}-->/<!--{$arrProduct.main_list_image}-->" alt="<!--{$arrProduct.name|escape}-->" width="48"/>




引用:

resize_image.phpを複製して /html/mobile/ の直下に設置


でやってみたところ携帯でも表示されました。
docomoF905iとauW52SAで確認しました。
Version 2.1.2です。
ゲスト
投稿日時: 2008/3/14 9:09
対応状況: −−−
Re: モバイルで商品一覧画像を表示したい
引用:

homanさんは書きました:
au(1年前くらいの機種)では一応表示されました。
僕の環境は1.4系なので、2系ではちょっとresize_image.phpの仕様が変わっているのか、もしくは一部の機種では正常に表示されないのかもしれないですね。


#追記
いま、2.0.1aのresize_image.phpを見てみたのですが、予想通り
require_once("./require.php");
が宣言されていて、携帯からの場合はrequire.php内でリダイレクトが掛って
うまくいかない感じですね。

ちょっと今すぐチェックする時間と環境がないのですが、
このresize_image.phpを複製して /html/mobile/ の直下に設置したらどうでしょうか。
ソース追っかけていないので、うまく動作するのか、その他致命的な問題がないか等はわからないですが・・・。


やってみましたがダメでした。
phpがわかれば〜
« 1 2 (3) 4 5 »
スレッド表示 | 古いものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は108,068名です
総投稿数は112,713件です

投稿数ランキング

1
seasoft
7369
2
468
3217
3
AMUAMU
2712
4
nanasess
2334
5
umebius
2085
6
h_tanaka
2021
7
yuh
1900
8
mcontact
1733
9
red
1582
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
805
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
balisys
502


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.