그누커머스에서 태그기능을 사용시에 리스트에서 태그가 노출시 순서 변경할 수 있나요?

그누커머스에서 태그기능을 사용시에 리스트에서 태그가 노출시 순서 변경할 수 있나요?

QA

그누커머스에서 태그기능을 사용시에 리스트에서 태그가 노출시 순서 변경할 수 있나요?

답변 1

본문

그누커머스에서 저는 태그를 지역명으로 사용했거든요.

지금 태그에 서울 인천 경기 강원 이렇게 지역명을 사용해서 게시판리스트에 나오거든요.

근데 순서가 서울 인천 경기 강원 이렇게 고정이 되였으면 좋을텐데.

현재 글이 태그에 인천이라는 태그가 들어 있으면 리스트에 인천이라는 태그가 맨앞으로 나옵니다.

그냥 순서를 서울 인천 경기 강원 이런 식으로 고정이 되여서 노출되였으면 좋겠네요.

이부분 어떻게 하면 가능할지 고수분들 알려주시면 감사하겠습니다 ^^

이 질문에 댓글 쓰기 :

답변 1

list.skin.php 에서

 

$board_tag_lists 변수는 태그를 정보를 담고 있는 배열입니다. 

 

foreach( $board_tag_lists as $s ){ 

 

하기 전에 아래 소스를 붙여 넣으면 해당 배열을 정렬할수 있습니다.

 


    $sortingArr = array('서울', '인천', '경기', '강원');
 
    if ( ! function_exists('recursive_array_search')) {
        function recursive_array_search($needle,$haystack) {
            if( count($haystack) ){
                foreach($haystack as $key=>$value) {
                    $current_key=$key;
                    if (is_array($value)) $val = recursive_array_search($needle,$value);
                    if($needle===$value OR (isset($val) and $val != false and $val != NULL)) {
                        if(empty($val)) return array($current_key);
                        return array_merge(array($current_key), $val);
                    }
                }
            }
            return false;
        }
    }
 
    if ( ! function_exists('recursive_array_search_key')) {
        function recursive_array_search_key($needle,$haystack) {
            foreach($haystack as $key=>$value) {
                $current_key=$key;
                if($needle===$value OR (is_array($value) && recursive_array_search($needle,$value) !== false)) {
                    return $current_key;
                }
            }
            return false;
        }
    }
 
    $sort_result = array(); // result array
    foreach($sortingArr as $val){ // loop
        if( $key = recursive_array_search_key($val, $board_tag_lists) ){
            $sort_result[] = $board_tag_lists[$key];
            unset($board_tag_lists[$key]);
        }
    }
 
    if( !empty($sort_result) ){
        $board_tag_lists = array_merge($sort_result, $board_tag_lists);
    }
답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 167
© SIRSOFT
현재 페이지 제일 처음으로