안녕하세요. 좋은 플러그인들을 감사하게 쓰고 있습니다.
KBoard의 읽기권한을 코스모스팜 회원관리 플러그인(WP-MEMBERS)로 관리하는 것에 대해 문의드립니다.
1.
현재 KBoard에 작성한 글을 읽는 권한을 코스모스팜 회원관리 플러그인을 이용하여 정기결제를 하신 분들에게만 드리고 있습니다.
또한 KBoard에 작성된 글 뿐만 아니라 워드프레스 포스트 역시 코스모스팜 회원관리 플러그인을 이용하여 정기결제를 하신 분들에게만 드리고 있습니다.
2.
앞서 말씀드린 바와 같이 KBoard글과 워드프레스 포스트 모두 정기결제를 하신 분들에게만 드리고 있지만, 설정 방법을 다르게 하였습니다.
워드프레스 포스트 같은 경우 아래 그림과 같이 각 포스트마다 어떤 역할을 가진 분들에게 읽기 권한을 줄 것인지를 설정할 수 있습니다.
하지만 KBoard의 글 경우에는 이러한 설정을 할 수 있는 메뉴가 나와있지 않습니다. 그래서 저는 KBoard 관리자 패널의 <허용> 부분에서 읽기 권한을 변경하였습니다.
이는 아래 그림과 같습니다.
이렇게 두 가지 다른 방식으로 워드프레스 포스트와 Kboard 글 읽기 권한을 조정하였습니다.
3.
하지만 이 경우 문제가 있습니다.
워드프레스 포스트는 정기결제는 하신 분에게만 읽기 권한을 주었다고 하더라도 포스트를 '클릭'하여 '요악문(Excerpt)'을 볼 수 있습니다.
하지만 Kboard의 글 경우에는 제목을 클릭하였을 경우 아예 글 페이지로 들어갈 수 조차 없습니다. 즉, 요악문(Excerpt)'을 볼 수 없는 것입니다.
4.
이 문제를 해결하기 위해 저는 WP-MEMBERS의 설정 탭에 들어가 Kboard의 읽기 권한을 설정하려고 해보았습니다. 이는 아래 그림과 같습니다.
하지만 저는 이 과정을 통해서 WP-MEMBERS의 설정 탭에서는 Kboard의 읽기 권한을 조정할 수 없다는 것을 알게 되었습니다.
5.
제 질문은 다음과 같습니다.
1) WP-MEMBERS의 설정 탭에서는 Kboad의 읽기 권한을 설정할 수 없는 것이 맞나요?
2) 만약 그렇다면 Kboard의 읽기 권한은 오로지 KBoard 관리자 패널의 <허용> 부분에서만 가능한 건가요?
3) 만약 그렇다면 Kboard의 글들을 워드프레스 포스트와 같이 정기결제를 하지 않은 분이 일부만 볼 수 있도록 변경하는 게 가능할까요?
감사합니다.
안녕하세요~^^
KBoard 플러그인에서 읽기권한을 설정하시면
읽기권한이 없는 사용자는 게시글 본문 페이지를 볼 수 없습니다.
관리자와 특정 역할을 가진 사용자에게만 게시글 본문 내용을 모두 표시하시려면
읽기권한을 제한없음으로 설정하신 후 kboard_content 필터를 활용해보시겠어요?
간단하게 예제 코드를 작성해봤습니다.
add_filter('kboard_content', 'kboard_content_20201118', 10, 3);
function kboard_content_20201118($kboard_content, $content_uid, $board_id){
if($board_id == '1'){ // 실제 게시판 id로 적용해주세요.
$board = new KBoard($board_id);
$user = wp_get_current_user();
if(!$board->isAdmin() && !in_array('역할', $user->roles)){ // 실제 게시판 id로 적용해주세요.
$kboard_content = mb_strimwidth(wp_strip_all_tags($kboard_content), 0, 250, '...', 'utf-8');
}
}
return $kboard_content;
}
위의 코드에서 $board_id == '1' 부분은 실제 게시판 id로 적용해주세요.
역할 부분에는 정기결제 사용자에게 적용되는 역할로 적용해보세요.
예를 들어, 편집자 역할에 코드를 적용하고 싶다면 위의 코드에서 역할을 editor로 교체해보세요.
250 부분의 수치를 늘리거나 줄여서 보여줄 게시글의 내용의 양을 조절하실 수 있습니다.
테마의 functions.php 파일에 코드를 추가하거나 Code Snippets 플러그인을 사용해서 코드를 추가할 수 있습니다.
워드프레스 역할과 권한에 대한 자세한 내용은
아래의 링크를 참고해보세요.
https://wordpress.org/support/article/roles-and-capabilities/
User Role Editor 플러그인을 사용하시면 워드프레스 역할을 더 늘리고 역할들의 권한도 편집할 수 있습니다.
고맙습니다.