제품리스트 특정필드값 대비해서 리본 표시 기능
본문
제품리스트 특정필드값 대비해서 리본다는 기능이 궁금해서 무턱대고 질문드려봅니다.
it_brand 필드값을 기존 텍스트 입력필드에서 셀렉트 선택필드로 수정하였습니다.
예로 선택필드 값이 1,2,3 세가지라고 가정했을때
그 값이 1이면 리스트 제품 이미지 상단에 A 리본이미지를 나오게 하고
2이면 B리본이미지, 3이면 C리본이미지를 나오게 하고 싶습니다.
list.10.skin.php 내용에 if문을 어떻게 써야 할지 막막해서 무턱대고 이렇게 여쭤봅니다.
thisValue를 쓰면 될것 같다라는 막연한 가능성만 보고 있습니다. ㅠㅠ
(물론 리본이미지의 위치나 크기등을 지정할 css도 작성해야겠지요. 이거는 제가 직접하겠습니다. ^^)
참고로 시하님 스케치북스킨에서 비슷하게나마 아래와 같이 적용되는게 있기는 합니다만
선택필드값을 기준으로 지정하는게 너무 어려워서요.
<?php
if ($list[$i]['is_notice']) // 공지사항
echo '<span class="ribbon nnu notice"><i>notice</i></span>';
else if ($wr_id == $list[$i]['wr_id'])
echo "<span class='ribbon nnu update'><i>ING</i></span>";
else if ($list[$i]['icon_new'])
echo "<span class='ribbon nnu new'><i>NEW</i></span>";
else if ($list[$i]['icon_hot'])
echo "<span class='ribbon nnu hot'><i>HOT</i></span>";
else
echo "";
?>
답변 1
스케치북이라는건 게시판스킨인 모양이군요.
각각 A,B,C가 의미하는게 뭔지 모르니 임의대로 인기상품, 추천상품, 최신상품으로 매칭해보겠습니다.
$ribbon = '';
switch($row['it_brand']) {
case '1':
$ribbon = '<span class="ribbon nnu hit"><i>인기상품</i></span>';
break;
case '2':
$ribbon = '<span class="ribbon nnu rec"><i>추천상품</i></span>';
break;
case '3':
$ribbon = '<span class="ribbon nnu new"><i>최신상품</i></span>';
break;
}
if($ribbon) echo $ribbon;
위치는 리본이라 하셨으니 echo get_it_image() 다음에 넣고 css에서 .cst_img에 position:relative; 넣고
.cst_img .ribbon 은 position:absolute; 해서 겹쳐넣으시는게 좋겠죠.