분류 텝 링크수정
본문
텝메뉴를 누루면 아래와 같이 리스트의 주소가 바뀌는데 이걸 리스트가 아닌
/bbs/board.php?bo_table=product&sca=텝메뉴내용
아래의 주소처럼 뷰목록으로 나오게 아디의 번호는 틀려지겠죠 숫자14부분은 뷰페이지 마다 틀리니 자동으로 처리할수 있는 방법
/bbs/board.php?bo_table=product&wr_id=14&sca=텝메뉴내용
bbs/list.php 의 어느부분을 어떻게 고쳐져야 할까요? 아님 다른곳인지요?
허접한 질문이지문 아시는분 답변좀 부탁드릴께요 개발자가 아니라서..
// 분류 사용 여부
$is_category = false;
$category_option = '';
if ($board['bo_use_category']) {
$is_category = true;
$category_href = get_pretty_url($bo_table);
$category_option .= '<li><a href="'.$category_href.'"';
if ($sca=='')
$category_option .= ' id="bo_cate_on"';
$category_option .= '>전체상품</a></li>';
$categories = explode('|', $board['bo_category_list']); // 구분자가 , 로 되어 있음
for ($i=0; $i<count($categories); $i++) {
$category = trim($categories[$i]);
if ($category=='') continue;
$category_option .= '<li><a href="'.(get_pretty_url($bo_table,'','sca='.urlencode($category))).'"';
$category_msg = '';
if ($category==$sca) { // 현재 선택된 카테고리라면
$category_option .= ' id="bo_cate_on"';
$category_msg = '<span class="sound_only">열린 분류 </span>';
}
$category_option .= '>'.$category_msg.$category.'</a></li>';
}
}
답변 2
$category_option .= '<li><a href="'.(get_pretty_url($bo_table,'','sca='.urlencode($category))).'"';
이것에서가 아닌
common.lib.php 에서 설정되어있는
funciton get_list() 함수의 중간에 있는
// 분류명 링크
$list['ca_name_href'] = get_pretty_url($board['bo_table'], '', 'sca='.urlencode($list['ca_name']));
를
// 분류명 링크
$list['ca_name_href'] = get_pretty_url($board['bo_table'], '', 'sca='.urlencode($list['ca_name']));
$list['href'] = get_pretty_url($board['bo_table'], $list['wr_id'], $qstr);
중에 위의것은 카테고리를 선택했을때 작동하는것이고
아래는 게시글리스트를 선택했을때 작동하는것인데
$qstr 의 값에는
'sca='.urlencode($list['ca_name']) 가 누락되어있을테니
$qstr .= '&sca='.urlencode($list['ca_name']); // 이 문장추가
$list['href'] = get_pretty_url($board['bo_table'], $list['wr_id'], $qstr);
를 해보시면
리스트마다 카테고리가 추가되서 따라갈것입니다
단, 검색결과에 영향이 있을수있으니 참고하세요
테스트 안해보고 로직만 보고 답변드리는점 ..
경우에따라 원하지 않는 형태가 될수있어보입니다.
view.skin.php에서
$sca 내용이 필요하다면
그냥 $view['ca_name']을 사용하시면 됩니다.
그리고 고쳐야 한 부분은
bbs/list.php
가 아니라
사용하시는 게시판 스킨 경로 밑에 있는 list.skin.php입니다.
이 파일 내용을 올려 보세요.