케이보드 관련 문의 드릴게요 (1:1 문의 게시판)

KBoard(케이보드)를 사용하여, 현재 예약 신청 및 관리 화면을 만들고 있습니다.

다만 로그인을 하지 않았을때 즉 비회원일 경우 아예 페이지가 열리지 않는데,

글쓰기 화면만 전체 공개후

글쓰기 버튼을 눌렀을때, 회원일 경우에는 작성

회원이 아닐경우 에는 경고창을 띄우게 하고 싶습니다.

1:1 문의 게시판 이기 때문에, 본인의글 외에는 보이지 않았으면, 하고요...

어떤 방법이 있는지 알려주시면 감사하겠습니다.

좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
  • 안녕하세요~^^

    워드프레스 관리자 -> KBoard -> 게시판 목록 -> 게시판 선택 -> 권한설정 페이지에서

    리스트 보기 설정을 본인의 글만 보기로 바꿔주시고, 페이지로 이동은 체크하지 말아보세요.

    그럼 게시판에서 본인의 글만 볼 수 있습니다.

     

    그리고 글쓰기 버튼을 계속 보이게 하시려면 스킨 파일을 수정해주셔야 합니다.

    방법이 스킨마다 다르기 때문에 아래 링크들을 참고해주시겠어요?

    http://www.cosmosfarm.com/threads/document/20321

    http://www.cosmosfarm.com/threads/document/16442

    고맙습니다.

  • add_action('kboard_pre_document_insert', 'my_kboard_pre_document_insert', 10, 4);
    function my_kboard_pre_document_insert($uid, $board_id, $content, $board){
    	if($board_id == '1' && !is_user_logged_in()){
    		die('<script>alert("로그인 사용자만 가능합니다.");window.location.href="로그인 페이지 주소";</script>');
    	}
    }
    
    add_filter('kboard_list_where', 'my_kboard_list_where', 10, 4);
    function my_kboard_list_where($where, $board_id, $content_list){
    	if($board_id == '1' && !$content_list->board->isAdmin()){
    		if(is_user_logged_in()){
    			$user_id = get_current_user_id();
    			$where  .= ' AND `member_uid` = '.$user_id.'';
    		}
    		else{
    			$where = '0';
    		}
    	}
    	
    	return $where;
    }

    이부분에 문제는 없나요 ??? 저희 홈페이지에는 적용이 안되 말씀드립니다 ㅠ

  • 안녕하세요.

    이전에 안내해드린 코드를 적용하시면

    쓰기권한이 제한없음으로 설정되어있어야 합니다.

    쓰기권한, 페이지 접근 권한, WP-Members 설정도 살펴봐보시겠어요?

    고맙습니다.

  • 다시 다 적용해 보았는데..... 

    그전 로그인 경고창도 사라졌습니다 ㅠㅠ

  • 나머지 추가 설정은 어떻게 해야하나요 ??

  • 안녕하세요.

    말씀하신 기능은 설정보다는 코드를 추가해주셔야 할 듯합니다.

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

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

    add_action('kboard_pre_document_insert', 'my_kboard_pre_document_insert', 10, 4);
    function my_kboard_pre_document_insert($uid, $board_id, $content, $board){
    	if($board_id == '1' && !is_user_logged_in()){
    		die('<script>alert("로그인 사용자만 가능합니다.");window.location.href="로그인 페이지 주소";</script>');
    	}
    }
    
    add_filter('kboard_list_where', 'my_kboard_list_where', 10, 4);
    function my_kboard_list_where($where, $board_id, $content_list){
    	if($board_id == '1' && !$content_list->board->isAdmin()){
    		if(is_user_logged_in()){
    			$user_id = get_current_user_id();
    			$where  .= ' AND `member_uid` = '.$user_id.'';
    		}
    		else{
    			$where = '0';
    		}
    	}
    	
    	return $where;
    }

    위의 코드에서 $board_id == '1' 부분은 실제 게시판 ID로 적용하시고

    문구와 로그인 페이지 주소도 수정하신 후에 적용해보세요.

    고맙습니다.

  • 답변 부탁드립니다.

  • 1. 글쓰기 부분에서는 누구나 다 들어와서 볼수 있게 만들고 싶습니다.

    2. 회원이 아닐경우, 글쓰기를 누르면 로그인 화면으로 전환이 됩니다.

    3. 글 목록에서는 내가 쓴 글만 볼수 있습니다.

  • 이렇게 할경우 리스트 에서는 본인글만 보기가 안되던데,

    해결 방안이 있을까요?

  • 안녕하세요~^^

    KBoard 게시판 글쓰기 권한 또는 페이지 제한 설정 쪽을 확인해보셔야 할 듯합니다.

    1. 워드프레스 관리자 -> KBoard -> 게시판 목록 -> 게시판 선택 -> 권한설정 페이지에서

    쓰기권한 설정이 제한없음으로 되어있는지 확인해보세요.

    2. 워드프레스 관리자 -> 페이지 -> 모든 페이지 -> 게시판이 설치된 페이지에서

    공개 설정이 전체 공개로 되어있는지 확인해보세요.

    3. WP-Members 플러그인을 사용 중이시라면

    워드프레스 관리자 -> 설정 -> WP-Members 페이지에서

    Content Blocking 설정을 모두 차단 해제해보시겠어요?

    고맙습니다.

  • 그렇게 하였는데, 자꾸 로그인 경고창이 발생하네요....

    travelpoint.co.kr 에서 마일리지 알아보기를 누를 경우

    로그인을 하지않은 유저든 한 유저든 모두 여기까지만 거쳐가게 하고 싶습니다.

    다만, 마일리지 알아보기를 누를 경우 그때 경고창이 발생이 되게끔요

  • 안녕하세요.

    워드프레스 관리자 -> KBoard -> 게시판 목록 -> 게시판 선택 -> 고급설정 페이지에

    게시판 기본 화면과 글 쓴 후 이동 화면 설정을 확인해보시겠어요?

    고맙습니다.

  • list.php 말고 editer.php 까지 넘어가게 설정을 하려면 어떻게 해야 하나요??

    에디터폼까지만 보여주고 싶은데...

  • 저희 쪽 테스트 서버에서 직접 테스트했을 땐 코드 상에는 문제가 없었습니다.

    비회원으로 올려주신 페이지 확인해보니 글 작성 페이지가 표시되지 않고 있습니다.

    워드프레스 관리자 -> 페이지 -> 모든 페이지 -> 게시판이 설치된 페이지 선택

    오른쪽 메뉴 중 페이지 제한이 공개 설정이 전체 공개로 되어 있는지 확인해보시겠어요?

    고맙습니다.

이미지 사진은 imgur에 업로드한 뒤 링크 걸어주세요.
좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기