현재 KBoard 위젯을 사용하는데 인기글을 하루 주기로 바꾸고 싶습니다.
위젯에 기간을 설정하는걸 예전에 본적이 있었던거 같은데...
다시 찾아보려니 아무리 봐도 안 보이네요... 제가 잘못 봤던 걸까요? 혹시 어디 있는지 알려주실 수 있을까요?
감사합니다. 잘 됩니다~
안녕하세요.
KBoard 위젯 플러그인의 버전이 1.1이라면
KBoardWidgetList.class.php 파일을 직접 수정하지 않고
테마 쪽 functions.php 파일에 코드를 추가해보시겠어요?
워드프레스 관리자 -> 외모 -> 테마 편집기 페이지에서 functions.php 파일 하단에
아래의 코드를 추가해보시겠어요?
add_filter('kboard_widget_list_where', 'my_kboard_widget_list_where', 10, 5);
function my_kboard_widget_list_where($where, $value, $limit, $exclude, $with_notice){
// 추천글
if($value == 'vote'){
$where .= " AND `date` >= date_add(now(), interval -1 week)";
}
// 인기글
if($value == 'view'){
$where .= " AND `date` >= date_add(now(), interval -1 week)";
}
return $where;
}
위의 코드를 적용하시면 KBoard 위젯 플러그인의 추천글, 인기글의 기간을
1주일로 설정하실 수 있습니다.
고맙습니다.
케이보드 위젯 의 인기글, 추천글의 기간설정을 1주일 로 하고 싶습니다. KBoardWidgetList.class.php 파일에서 위의 코드를 찾을수가 없습니다. 업데이트 (1.1버전)이후에 바뀐건지요? 가능한 방법 있을까요?(1주간의 추천글, 1주간의 인기글 이런식으로요..)
감사합니다.
안녕하세요.
최신 버전의 KBoard 위젯을 사용 중이시라면
워드프레스 관리자 -> 외모 -> 테마 편집기 페이지에서 functions.php 파일 하단에
아래의 코드를 추가해보세요.
add_filter('kboard_widget_tab_list', 'my_kboard_widget_tab_list', 10, 1);
function my_kboard_widget_tab_list($tab_list){
$tab_list[] = '오늘';
$tab_list[] = '최근 3일';
$tab_list[] = '최근 일주일';
return $tab_list;
}
add_filter('kboard_widget_list_where', 'my_kboard_widget_list_where', 10, 5);
function my_kboard_widget_list_where($where, $value, $limit, $exclude, $with_notice){
if($value == '오늘'){
$where .= " AND `date` >= DATE_FORMAT(now() , '%Y%m%d 000000')";
}
if($value == '최근 3일'){
$where .= " AND `date` >= date_add(now(), interval -3 day)";
echo $where;
}
if($value == '최근 일주일'){
$where .= " AND `date` >= date_add(now(), interval -1 week)";
echo $where;
}
return $where;
}
코드를 추가하신 후에는
워드프레스 관리자 -> 외모 -> 위젯 -> KBoard 위젯 설정에서
각 항목을 체크하신 후에 저장하기 버튼을 눌러보세요.
고맙습니다.
안녕하세요~^^
KBoard 게시판 플러그인의 최신글이 아닌
KBoard 위젯 플러그인에서 기간 설정을 하시려면
파일을 직접 수정해주셔야 합니다.
FTP로 접속해서 /wp-content/plugins/kboard-widget/class/KBoardWidgetList.class.php 파일에
아래의 코드를 찾아서
elseif($value == 'view'){
$where = implode(' AND ', $where);
$results = $wpdb->get_results("SELECT `uid` FROM `{$wpdb->prefix}kboard_board_content` WHERE {$where} ORDER BY `view` DESC, `date` DESC LIMIT {$limit}");
}
아래의 코드로 교체해보세요.
elseif($value == 'view'){
$where[] = "`date` >= DATE_FORMAT(now() , '%Y%m%d 000000')";
$where = implode(' AND ', $where);
$results = $wpdb->get_results("SELECT `uid` FROM `{$wpdb->prefix}kboard_board_content` WHERE {$where} ORDER BY `view` DESC, `date` DESC LIMIT {$limit}");
}
기간을 하루, 일주 전 탭은 현재는 지원하고 있지 않습니다.
추후 연구 개발하여 KBoard 위젯 플러그인에 기간 설정 기능을 업데이트하도록 하겠습니다.
고맙습니다.
저도 이거 궁금한데.
추가로 기간을 하루 일주 전기간. 이렇게. 탭으로 한번 터치하게 하는법이 궁금합니다. 카테고리 탭처럼요..
그아래 추천순 조회순 최신순도 탭으로요.
원 질문자께. 묻어가서 죄송합니다.
감사합니다.