정렬 순서를 알파벳 순으로도 할 수 있을까요?

안녕하세요,

게시물 정렬 순서를 선택할 때 알파벳 순으로 정렬하는 선택지도 추가할 수 있는지 문의드립니다.

워드프레스 에러 기술지원 서비스 전문가에게 맡기세요
좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
  • 안녕하세요~^^

    KBoard 게시글 정렬에 알파벳순을 추가하고 싶으신 건지요?

    게시판 스킨을 수정해주셔야 할 듯합니다.

    스킨마다 코드가 다르기 때문에 디폴트(Default) 스킨을 기준으로 안내해드리겠습니다.

     

    FTP로 접속해서 /wp-content/plugins/kboard/skin/사용중인스킨/list.php 파일에

    아래의 코드를 찾아서

    <select name="kboard_list_sort" onchange="jQuery('#kboard-sort-form-<?php echo $board->id?>').submit();">
    	<option value="newest"<?php if($list->getSorting() == 'newest'):?> selected<?php endif?>><?php echo __('Newest', 'kboard')?></option>
    	<option value="best"<?php if($list->getSorting() == 'best'):?> selected<?php endif?>><?php echo __('Best', 'kboard')?></option>
    	<option value="viewed"<?php if($list->getSorting() == 'viewed'):?> selected<?php endif?>><?php echo __('Viewed', 'kboard')?></option>
    	<option value="updated"<?php if($list->getSorting() == 'updated'):?> selected<?php endif?>><?php echo __('Updated', 'kboard')?></option>
    </select>

    아래의 코드로 교체해보세요.

    <select name="kboard_list_sort" onchange="jQuery('#kboard-sort-form-<?php echo $board->id?>').submit();">
    	<option value="newest"<?php if($list->getSorting() == 'newest'):?> selected<?php endif?>><?php echo __('Newest', 'kboard')?></option>
    	<option value="best"<?php if($list->getSorting() == 'best'):?> selected<?php endif?>><?php echo __('Best', 'kboard')?></option>
    	<option value="viewed"<?php if($list->getSorting() == 'viewed'):?> selected<?php endif?>><?php echo __('Viewed', 'kboard')?></option>
    	<option value="updated"<?php if($list->getSorting() == 'updated'):?> selected<?php endif?>><?php echo __('Updated', 'kboard')?></option>
    	<option value="abc"<?php if(isset($_GET['kboard_list_sort']) && $_GET['kboard_list_sort'] == 'abc'):?> selected<?php endif?>>알파벳순</option>
    </select>

     

    그 다음, 아래의 코드를 추가해보세요.

    add_filter('kboard_list_orderby', 'kboard_list_orderby_20200929', 10, 3);
    function kboard_list_orderby_20200929($orderby, $board_id, $list){
    	if(isset($_GET['kboard_list_sort']) && $_GET['kboard_list_sort'] == 'abc' && $board_id == '1'){ // 실제 게시판 id로 적용해주세요.
    		$orderby = "`title` DESC";
    	}
    	return $orderby;
    }

    위의 코드에서 $board_id == '1' 부분은 실제 게시판 id로 적용해주세요.

    테마의 functions.php 파일에 코드를 추가하거나 Code Snippets 플러그인을 사용해서 코드를 추가할 수 있습니다.

    고맙습니다.

좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기