그누프레스 게시판 리스트에 자기가 쓴글만 보게끔
본문
그누프레스 게시판 리스트페이지에서 관리자는 리스트를 다 확인이 가능한데 회원이 접속시에는 회원이 자기 자신이 작성한 내용이 리스트 보이게끔 가능할까요? 회원은 리스트전체를 확인못하고 자기 자신만 작성한 글들을 볼수 있는거죠 .. 부탁드릴께요 ㅜㅜ
답변 1
현재 0.2.8 버젼으로 업데이트 되었습니다.
아래 소스는 0.2.8 이상에서만 실행됩니다.
소스를 사용하시는 테마 functions.php 에 붙이시거나 아니면 다른 적당한 파일에 넣어서 테스트 해 보세요.
<?php
add_filter('g5_list_search_sql', 'add_list_sql_query_modify', PHP_INT_MAX, 7); //리스트 보기 필터 검색했을때
add_filter('g5_list_nosearch_sql', 'add_list_sql_query_modify', PHP_INT_MAX, 7); //리스트 보기 필터
function add_list_sql_query_modify($sql, $board, $sql_search, $sql_order, $search_tag, $from_record, $page_rows){
if( current_user_can( 'administrator' ) ){ //관리자의 경우는 예외
return $sql;
}
//echo $board['bo_table'];
//if( $board['bo_table'] = 'test' ){ //해당 게시판을 지정하려면 조건에 맞게금 쓴다.
if( !is_user_logged_in() ){ //비회원인 경우에는
$add_where = " and 0 ";
return str_replace($sql_order, $add_where.$sql_order, $sql);
}
//오직 회원만 내글을 볼수 있게함
$add_where = " and user_id = '".get_current_user_id()."' ";
$sql = str_replace($sql_order, $add_where.$sql_order, $sql);
//} //end if
return $sql;
}
add_filter('g5_view_content', 'g5_view_content_filter_fn', PHP_INT_MAX, 4); //내용보기 필터
function g5_view_content_filter_fn($conv_content, $wr_content, $board, $view){
global $gnupress;
if( current_user_can( 'administrator' ) ){ //관리자의 경우는 예외
return $conv_content;
}
//echo $board['bo_table'];
//if( $board['bo_table'] = 'test' ){ //해당 게시판을 지정하려면 조건에 맞게금 쓴다.
if( !$view['user_id'] || $view['user_id'] != get_current_user_id() ){ //회원 자신의 글이 아니면
$conv_content = '';
g5_alert("글을 볼수 있는 권한이 없습니다.");
exit;
}
//} //end if
return $conv_content;
}
?>
답변을 작성하시기 전에 로그인 해주세요.