영카트 여분필드를 따라해보았습니다.
본문
아래는 제가 보고 따라해본 글입니다.
몇가지 과정에서 없는 내용이 있어서 문의드립니다.
글을 따라하는대 제 영카트엔 없는 내용들이 있어서요.
혹시 업데이트 후 파일위치가 바뀌거나 그런 것이 있는지 궁금합니다.
바쁘시겠지만 고수분들의 훌륭한 가르침 부탁드립니다. ㅜ.ㅜ
--------------------------------------------------------------------------------------------
## 상품 등록 화면에서 여분필드를 활용해 항목 추가하기
영카트는 기본적으로 상품 등록할 때 하단에 여분필드 설정 부분이 있습니다. 거기서 사용해도 되지만
아래 내용은 상황에 따라 보기 편하게 기존 항목 중간에 끼워 넣는 방법입니다.
영카트 여분필드는 it_1 부터 it_10 까지 사용합니다. 마찬가지로 우측에 있는 체크박스에서
분류적용은 chk_ca_1 부터 chk_ca_10 까지,
전체적용은 chk_all_1 부터 chk_all_10 까지 사용합니다.
아래는 예시입니다. 이런 식으로 1부터 10까지 원하는 만큼 추가해서 사용하면 됩니다.
/adm/shop_admin/itemform.php에서 모델 입력 부분 아랫부분이나 원하는 위치에 넣어줍니다.
<tr>
<th scope="row"><label for="it_1">여분필드1</label></th>
<td>
<?php echo help("입력하지 않으면 상품상세페이지에 출력하지 않습니다."); ?>
<input type="text" name="it_1" value="<?php echo get_text($it['it_1']); ?>" id="it_1" class="frm_input" size="40">
</td>
<td class="td_grpset">
<input type="checkbox" name="chk_ca_1" value="1" id="chk_ca_1">
<label for="chk_ca_1">분류적용</label>
<input type="checkbox" name="chk_all_1" value="1" id="chk_all_1">
<label for="chk_all_1">전체적용</label>
</td>
</tr>
여기만 수정하면 하단에 있는 여분필드 설정 부분과 겹치게 되니
같은 파일 하단에 있는 여분필드 설정 부분에서 아래 내용을 찾습니다.
<?php for ($i=1; $i<=10; $i++) { ?> <- 이 내용이 없습니다. 제 영카트엔...
여기서 $i=1 부분을 위에서 적용한 만큼 제외 합니다.
여분필드 1번 하나만 사용했다면 $i=2 로 수정하고, 여분필드1, 2번 2개를 사용했으면 $i=3 으로 수정합니다.
번호순으로 사용한다면 상관없는데 여분 필드 번호를 띄엄띄엄 사용한다면 유의하셔야 합니다.
헷갈리면 하단 여분 필드 설정 부분 전체를 삭제하는 방법도 있습니다.
## 상품 목록 리스트 페이지에서 여분필드값 추가하기
/shop/list.php 에서 아래 내용을 찾으신 후 $list->set_view('it_1', true); 을 추가합니다.
아래 내용을 찾으라는대 아래 내용이 없습니다.
........
........
$list->set_view('it_1', true);
$list->set_view('it_cust_price', true);
$list->set_view('it_price', true);
........
........
/skin/shop/basic/list.10.skin.php 에서 원하는 위치에 아래 내용을 추가합니다.
내용을 추가하니 여분필드가 아닌 저 내용 그대로가 출력됩니다.
if ($this->view_it_1) {
echo "<div class=\"sct_txt\">".stripslashes($row['it_1'])."</div>\n";
}
## 상품 클릭시 나오는 상품 상세 페이지에서 여분필드값 추가하기
/skin/shop/basic/item.form.skin.php 에서 기존 항목들 참고해서 원하는 위치에 추가합니다.
해보았으나 출력되지 않습니다.
<?php if ($it['it_1']) { ?>
<tr>
<th scope="row">여분필드1</th>
<td><?php echo $it['it_1']; ?></td>
</tr>
<?php } ?>
답변 2
영카트 최신 버전을 다운받아서 살펴봤는데 바뀐 건 없습니다. 그대로 있습니다.
빌더 사용하시는 거 아닌가요? 해당 팁은 영카트5 원본 기준으로 작성한 내용입니다.
영카트를 다시 다운받고 /shop/list.php를 열어 $list->set_view('it_1', true); 찾아보는대 아무리 찾아도 찾을 수가 없습니다. ㅜ.ㅜ