WEBサイト作成時に発生するエラーやトラブル対応の備忘録を中心に、いろいろと書いております。


【登録画面】商品登録のカテゴリーを短縮する。

最初の状態だと、商品登録のカテゴリーは

AAA
AAA>BBBBB
AAA>BBBBB>CCC
AAA>BBBBB>DDD
AAA>BBBBB>EEEEE
AAA>BBBBB>EEEEE>FFF
AAA>BBBBB>EEEEE>GGGG
AAA>HH
AAA>HH>IIII
JJJJJJJJJJJJJ
JJJJJJJJJJJJJ>KK

という風になります。
カテゴリーの文字数が多くなればなるほど、カテゴリーの階層がもぐればもぐるほどわかりにくいです。

なので、親カテゴリーたちはとってしまうことにしました。

ツꀀこのカテゴリーたちは、

data/class/pages/admin/products/LC_Page_Admin_Products_Product.php
L.346の $objDb->sfGetLevelCatList(false) にて取得されている模様。

このsfGetLevelCatList は、/data/class/helper/SC_Helper_DB.phpにいます。ツꀀ

ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ // 子カテゴリから親カテゴリを検索
ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ $parent_category_id = $arrRet[$cnt][‘parent_category_id’];
ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ for($cat_cnt = $arrRet[$cnt][‘level’]; $cat_cnt > 1; $cat_cnt–) {

ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ foreach ($arrRet as $arrCat) {
ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ // 親が見つかったら順番に代入]
ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ if ($arrCat[‘category_id’] == $parent_category_id) {

ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ $arrOutput[$cnt] = CATEGORY_HEAD
ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ . $arrCat[‘category_name’] . $arrOutput[$cnt];
ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ $parent_category_id = $arrCat[‘parent_category_id’];
ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ }
ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ }
ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ }

ここで、ぐるぐるとがんばっていますので、この部分を修正

ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ // 子カテゴリから親カテゴリを検索
ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ $parent_category_id = $arrRet[$cnt][‘parent_category_id’];
ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ for($cat_cnt = $arrRet[$cnt][‘level’]; $cat_cnt > 1; $cat_cnt–) {

ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ foreach ($arrRet as $arrCat) {
ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ // 親が見つかったら順番に代入]
ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ if ($arrCat[‘category_id’] == $parent_category_id) {

ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ $arrOutput[$cnt] .= CATEGORY_HEAD.” “;
ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ . $arrCat[‘category_name’] . $arrOutput[$cnt];
ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ $parent_category_id = $arrCat[‘parent_category_id’];
ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ
ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ }
ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ }
ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ }

こんな感じ。

>AAA
> > BBBBB
> > >CCC
> > >DDD
> > >EEEEE
> > > >FFF
> > > >GGGG
> >HH
> > >IIII
> JJJJJJJJJJJJJ
> >KK

という風になります。これで、登録時のデザインも崩れない!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください