[Tep-j-general] Re: mklist.php のカテゴリについて

Back to archive index

hamada bungu****@leo*****
2006年 1月 6日 (金) 15:33:49 JST


こんにちわ。

On Fri, 6 Jan 2006 13:24:02 +0900
Masato Kobayashi <ksoun****@rd*****> wrote:

> parent_idとcategories_idをどのようにして照らし合わせれば良いのかが分か
> らずいきずまっていまいました。

???

> $sql = "select categories_id from " . TABLE_PRODUCTS_TO_CATEGORIES . " where products_id = '" . $products_id . "' limit 1";
> 
> $result = tep_db_query($sql);
> 
> $data = tep_db_fetch_array($result);

たとえば↑これで、件の商品のカテゴリIDを$data['categories_id']として得た
としますよね?(ちと強引ですが。limitで強制的に単一化してる:^^;)

で、この値を変数$categories_idに格納して

> $categories_id = $data['categories_id'];
> 
> $sql = "select parent_id from " . TABLE_CATEGORIES . " where categories_id = '" . $categories_id . "' limit 1";
> 
> $result = tep_db_query($sql);
> 
> $data = tep_db_fetch_array($result);

とかすると、$data['parent_id']として親カテゴリのIDが得られます。

こうして得られた親カテゴリのIDが0ならそこが最上位カテゴリ、そうでなけれ
ば得られた親カテゴリのIDを再度変数$categories_idに代入して0になるまで繰
り返し…で宜しいのではないかと思うのですが?

> 今回はcPathをどのように取得して良いのかも分かりませんでした。

先にも同じことを書いたような気がするんですが、重複商品じゃなければ↓これ
で得られるのでは?

> $cpath = tep_get_product_path($products_id);

たしかmklist.phpでもこうやって得てたような。

で、

> $tmp = explode("_", $cpath);

とかやれば、$tmp[0]に最上位カテゴリのID入りませんかね?


はまだ




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