Ticket #2283 (closed 改善提案: 修正済)

Opened 10 years ago

Last modified 10 years ago

resize_image.php の見直し

Reported by: nanasess Owned by: poego
Priority: Milestone: EC-CUBE2.13.0
Component: その他 Version: 2.12.5
Keywords: Cc:
修正済み: yes

Description (last modified by kim) (diff)

ここ近年、回線速度も向上し、サーバーに負荷をかけてまで、毎回縮小画像を生成する必要は薄れてきたと思われます。 少々サイズの大きな画像でも、1度表示してしまえば、ブラウザのキャッシュに乗るので、トラフィックの影響も少ないのではないでしょうか。

この際、何かとトラブルの多い resize_image.php を廃止するのはいかがでしょう。

以下のような CSS を使えば、縦横比を維持したままリサイズできますし。

.image-resize {
    max-width: 64px;
    max-height: 64px;
}

参考  http://kudakurage.hatenadiary.com/entry/20090629/1246245252

-- 追記 CSSだとIE7で問題がありそう。 Feed生成のプラグイン等で、利用するなど、利用価値はあり、2.13での廃止は時期早々と思われます。 いちお、既存の処理も利用可能な形にはしておくが、商品ID等を渡してファイルへのパスをDBから取得する方法を標準としたい。

Change History

comment:1 Changed 10 years ago by kim

  • Description modified (diff)
  • Summary changed from resize_image.php の廃止 to resize_image.php の見直し

comment:2 Changed 10 years ago by kim

  • Owner changed from somebody to poego

comment:3 Changed 10 years ago by kim

  • Priority changed from to

comment:4 Changed 10 years ago by poego

  • Status changed from new to assigned

comment:5 Changed 10 years ago by poego

r23005 で作成してみました。
resize_image.phpを呼び出すたびに、DBへのアクセスを行う事がやはり気になったので、フロントのおすすめ商品のテンプレートだけひとまず修正
IE7で問題がないのであれば、resize_image.php 使用箇所をすべてCSSの
max-width: 80px;max-height: 80;
のような形にするほうが良いと思われます。
手元にIE7がないので未検証。

利用箇所は管理画面7箇所、defaultテンプレート7箇所、sphoneテンプレート11箇所

comment:6 Changed 10 years ago by poego

表示速度検証(Virtualboxでローカルに作った開発環境)
デフォルトインストール状態でTOPページのお薦め商品画像で検証

  • resize _image.php 利用時(パス渡し)
    常に200 1.95s ~1.97s
  • resize_image.php 利用時(ID渡し)
    常に200 1.74 s~2.08s
  • CSS利用時
    200 152ms〜204 ms
    304 57 ms〜107ms

圧倒的にCSSのほうが早いので、CSSへの置き換えを行なっていきます。 CSSがうまくいかない環境や、resize_imageを使いたい方ように、resize_image自体は残しておきます。

comment:7 Changed 10 years ago by poego

  • 修正済み set

r23041 でコミットしました。

comment:8 Changed 10 years ago by poego

r23042 で一部間違いを修正

comment:9 follow-up: ↓ 10 Changed 10 years ago by nanasess

  • 修正済み unset

max-height: 65; となっているようです。

max-height: 65px; が正しい。

comment:10 in reply to: ↑ 9 Changed 10 years ago by poego

  • 修正済み set

nanasess への返信

max-height: 65; となっているようです。

max-height: 65px; が正しい。

r23122 で対応しました。

comment:11 Changed 10 years ago by m_uehara

・お問い合わせに画像なし商品を登録するとフロントでリンク切れ表示となります。
・購入確認画面で複数配送先を指定している場合、配送先に表示される商品画像に「画像はありません」の画像が表示されております。

ご確認のほどよろしくお願いいたします。

comment:12 Changed 10 years ago by m_uehara

r23166 にて、お問い合わせ商品のリンク切れ、購入確認画面の複数配送先の商品画像表示を修正いたしました。

comment:13 Changed 10 years ago by h_yoshimoto

  • Status changed from assigned to closed
  • Resolution set to 修正済
Note: See TracTickets for help on using tickets.