[워드프레스] 케이보드에서 현재 사용자가 작성한 글만 표시하기

1

워드프레스에서 많이 사용되는 게시판 플러그인인 케이보드(Kboard)에서 현재 로그인한 사용자가 특정 게시판에 접근할 경우 본인이 작성한 글의 목록만 표시하면 어떻게 하는지에 대해 질문하는 분이 간혹 계시네요.

이 경우 kboard_list_where 후크를 사용하여 쿼리를 수정해야 합니다. 케이보드에서 지원하는 후크는 여기를 참고하세요.

다음과 같은 코드를 테마 함수 파일에 추가하면 제대로 작동합니다.

/* KBoard 에서 현재 사용자가 작성한 글만 표시 */
add_filter('kboard_list_where','show_my_posts_only',10,2);
function show_my_posts_only($where,$board_id) {
if($board_id=='2') // 게시판 ID는 적절히 수정
{
if( current_user_can('editor') || current_user_can('administrator') ) {
return $where;
}
else  {
$user_ID = get_current_user_id();
$where= "`board_id`='$board_id' AND `member_uid`='$user_ID'";
return $where;

}
}
else {
return $where;
}
}

그러면 자신이 작성한 글만 게시판 목록에 표시됩니다.

우리나라에서는 케이보드, 그누보드, 킹콩보드 등 한국형 게시판이 많이 사용되지만 전 세계적으로는 포럼 플러그인인 bbPress가 널리 사용됩니다. 완성도가 높은 bbPress를 사용하면 SEO 등의 측면에서 유리할 것 같습니다. 레이아웃이 너무 외국적(이질적)이어서 bbPress 사용이 꺼려진다면 여기에서 우리나라 게시판 형태로 레이아웃을 수정한 버전을 확인할 수 있습니다.

WordPress bbPress with table layout - bbPress를 한국형 게시판으로 변경하기

bbPress 템플릿 소스를 여기에서 다운로드하여 테스트해볼 수 있습니다.

참고:

Comments