영카트 리스트 페이지 ca_id
본문
shop/list.php?ca_id=20
리스트 페이지에서 본 url 20 카아이디를 부르는데
shop/list.php?ca_id=<?php echo $list[$i]['ca_id']; ?>
를 넣으면 20이 아니라 2050 등 하위 메뉴 ca_id 가 불러와집니다
20을 부르려면 어떤방법이 있나요?
답변 4
shop/list.php에 보면 다음 코드가 있습니다
$list->set_category($ca['ca_id'], 1);
<---1차분류에서 20으로 시작하는 것 모두 ca_id =20 ca_id=2010 2020 ~~~`
ca_id = 201010 201020 202010~~~등등ㅇ 검색
$list->set_category($ca['ca_id'], 2); <---2차 "
$list->set_category($ca['ca_id'], 3); <--- 3차 "
위와 같이 모든 하위 차수까지 찾아오게 되어있습니다
1차분류에서만 찾게 하려면 두번째 세번째 주석처리하면 되겠는데 그렇게하면 문제는
ca_id=2050으로 검색하면 1차분류가 2050인 것만 찾게 됩니다
하위분류라는 개념이 없으므로 1차분류에 2050을 넣을 수 있고 205010도 넣을 수 있는데
운영하는 사람이 정확하게 하위분류 개념으로 상품을 등록해서 사용한다면
즉 1차분류는 2차리, 2차분류 4자리 , 3차분류 6자리 이렇게만 등록 한다면
다음처럼 하면 되겠습니다
if( strlen($ca_id) ==2) $list->set_category($ca['ca_id'], 1);
if( strlen($ca_id) ==4) $list->set_category($ca['ca_id'], 2);
if( strlen($ca_id) ==6) $list->set_category($ca['ca_id'], 3);
shop/list.php?ca_id=<?php echo $list[$i]['ca_id']; ?>
를 넣으면
==
어디에 넣으신 건가요?
<?php echo substr ( $list[$i]['ca_id'], 0, 2); ?>
로 해 보세요
shop/list.php?ca_id=<?php echo $ca_id; ?>