코스모스팜 스레드

원하는 게시물만 최신글 반영

원하는 게시물만 최신글이 나오게 할 수 있을까요?

 

글 작성시에 (메인 노출)을 클릭하면 최신글에 (메인 노출)을 클릭한 게시물만 나오게 입니다.

 

항상감사합니다.

이 페이지의 내용이 유익하시나요? 혹은 더 많은 답변을 받길 원하시면 이 페이지를 공유 해보시는건 어떨까요?

내 홈페이지에 소셜 공유 버튼 추가하기

코스모스팜 회원관리
코스모스팜 회원관리
  • 안녕하세요~^^

    KBoard 플러그인에서 체크박스 필드를 새로 추가하시고

    kboard_list_where 필터와 kboard_list_from 필터를 사용해서

    게시글 작성 시 체크박스에 체크한 게시글만 표시하도록 하면 될 듯합니다.

     

    1. KBoard 게시판에 체크박스 입력 필드를 추가해보세요.

    입력 필드 추가 방법은 아래의 링크를 참고해보시겠어요?

    KBoard(케이보드) 게시판에 새로운 필드 추가하기

     

    2. 워드프레스 관리자 -> 외모 -> 테마 편집기 페이지에서 functions.php 파일 하단에

    아래의 코드를 추가해보시겠어요?

    add_filter('kboard_list_where', 'my_kboard_list_where', 10, 3);
    function my_kboard_list_where($where, $board_id, $content_list){
    	global $wpdb;
    	$option_key = 'latest';
    	$option_value = 'latest';
    	if($content_list->is_latest && $board_id == '1'){
    		$where .= " AND (`option_key`='{$option_key}' AND `option_value` = '{$option_value}')";
    	}
    	return $where;
    }
    add_filter('kboard_list_from', 'my_kboard_list_from', 10, 3);
    function my_kboard_list_from($from, $board_id, $content_list){
    	global $wpdb;
    	if($content_list->is_latest && $board_id == '1'){
    		$from = "`{$wpdb->prefix}kboard_board_content` LEFT JOIN `{$wpdb->prefix}kboard_board_option` ON `{$wpdb->prefix}kboard_board_content`.`uid`=`{$wpdb->prefix}kboard_board_option`.`content_uid`";
    	}
    	return $from;
    }

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

    option_key와 option_value 값은 추가하신 필드에 맞게 변경해보세요.

     

    추가로 위의 코드 중에서 $content_list->is_latest 코드는 최신글인지 체크하는 코드입니다.

    $content_list->is_latest 부분을 지우시면 일반 게시글 목록에도 적용됩니다.

    고맙습니다.

코스모스팜 회원관리