안녕하세요. 항상 많은 문제를 친절하게 해결해주셔서 감사합니다.
이렇게 글을 쓰게 된 것은
이슈- 케이보드 여러 작성자 리스트가 있다고 가정할때
예를들면
홍길동
둘리
또치
고길동
이렇게 사용자가 열거되어 있을때
사용자를 클릭하면 그 사용자가 작성한 글만 보여지게 하고 싶은데요~
다시 예를들면
둘리클릭- 둘리가 쓴 글만 보임
고길동클릭- 고길동이 쓴 글만 보임
이렇게 각 사용자가 쓴글만 공개적으로 보여지도록 하는 코드가 혹시 있을까요?
답변 부탁드리겠습니다.
비오는데 감기조심하세요!
안녕하세요~^^
wp-content/plugins/kboard/skin/사용중인 스킨/list.php 파일 중
<?php echo $content->getUserDisplay()?>
코드를 아래의 코드로 모두 변경해주세요
<a href="<?php echo add_query_arg('target_uid', $content->member_uid, get_permalink())?>"><?php echo $content->getUserDisplay()?></a>
아래의 코드를 테마 functions.php 파일에 추가한 후
확인해보시겠어요?
add_filter('kboard_list_where', 'kboard_list_where_20211130', 10, 3);
function kboard_list_where_20211130($where, $board_id, $content_list){
$user_id = isset($_GET['target_uid']) ? esc_sql($_GET['target_uid']) : '';
if($user_id && $board_id == '1'){ // 실제 게시판 id로 적용해주세요.
$where = "`member_uid`='{$user_id}' AND `parent_uid`='0' AND `notice`='' AND (`status`='' OR `status`='pending_approval')";
}
return $where;
}
고맙습니다.
답변 정말 감사합니다 ㅠㅠ
혹시 특정게시판이 아닌 "여러개의 게시판"을 보여지게도 할 수도 있을까요?
여러개의 게시판에 적용하시려면 $board->id == '1' 부분을
in_array($board->id, array('2', '4', '7', '8')) 이런 식으로 교체해서 확인해보시겠어요?
PHP in_array 함수에 대한 자세한 내용은
아래 링크를 참고해보세요.
https://www.php.net/manual/en/function.in-array.php
모든 게시판에 적용시키려면 $board_id = '1' 부분을 삭제해보시겠어요?
고맙습니다.