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 까지 넘어가게 설정을 하려면 어떻게 해야 하나요??
에디터폼까지만 보여주고 싶은데...
저희 쪽 테스트 서버에서 직접 테스트했을 땐 코드 상에는 문제가 없었습니다.
비회원으로 올려주신 페이지 확인해보니 글 작성 페이지가 표시되지 않고 있습니다.
워드프레스 관리자 -> 페이지 -> 모든 페이지 -> 게시판이 설치된 페이지 선택
오른쪽 메뉴 중 페이지 제한이 공개 설정이 전체 공개로 되어 있는지 확인해보시겠어요?
고맙습니다.