[Tep-j-general] Re: 型番を非表示で、商品を型番でソート

Back to archive index

Seiji Sogabe sogab****@alles*****
2006年 2月 17日 (金) 19:44:57 JST


曽我部です。

仲居 雅浩 wrote:
> いつもメーリングリストを参考にさせて頂いております。
> 
> 過去ログを拝見して、カテゴリーページのディフォルトを商品の型番でソートできるように変更しました。
> 型番を表示している状態では、きちんと動作しているのですが、
> 管理画面>商品一覧から、型番の表示を0(非表示)にすると、正しくソートされなくなってしまいます。

過去ログってどれでしょう?

http://lists.sourceforge.jp/mailman/archives/tep-j-general/2002-November/011746.html
http://lists.sourceforge.jp/pipermail/tep-j-general/2005-June/016002.html

でしょうか。どれかわからないと、どう変更したのかわかりません。
上記の変更方法とすれば、前提は型番を表示することなので、非表示にするとダメですね。

> 本家フォーラムで、この件についてらしきログを見つけ、
> http://forums.oscommerce.com/index.php?showtopic=98818&hl=
> おそらく $select_column_list = ''; を変更するようなのですが、
> どうもうまくいかず、行き詰ってしまいました・・・

どういうふうにうまくいかないのでしょう。変更内容と結果がわからないと誰にも
わかりません。

おそらくですが、default.php の

>  197        for ($col=0, $n=sizeof($column_list); $col<$n; $col++) {
>  198          if ($column_list[$col] == 'PRODUCT_LIST_NAME') {
>  199            $HTTP_GET_VARS['sort'] = $col+1 . 'a';
>  200            $listing_sql .= " order by pd.products_name";
>  201            break;
>  202          }
>  203        }

を、

      if (in_array('PRODUCT_LIST_MODEL', $column_list)) {
        for ($col=0, $n=sizeof($column_list); $col<$n; $col++) {
          if ($column_list[$col] == 'PRODUCT_LIST_MODEL') {
            $HTTP_GET_VARS['sort'] = $col+1 . 'a';
            $listing_sql .= " order by p.products_model";
            break;
          }
        }
      } else {
        $HTTP_GET_VARS['sort'] = '0a';
        $listing_sql .= " order by p.products_model";
      }

にすれば、型番の表示に関係なく型番でソートできると思います。

# あまり、確認してはいません。

では。

-- 
sogab****@alles*****



Tep-j-general メーリングリストの案内
Back to archive index