안녕하세요 선생님
제가 여러게시판 사용중인데요,그 중 특정 게시판은 글을 읽다가 중간부분에서 로그인하여야 나머지 글이 보이도록 하는 방법에대해 일전에 질문을 한적이 있습니다.
이에대해 아래 소스를 적으면 된다하셔서, 오늘 시행하였습니다.
add_filter('kboard_content', 'my_kboard_content', 10, 3);
function my_kboard_content($content, $content_uid, $board_id){
if(!is_user_logged_in() && $board_id == '13'){ // 실제 게시판 id로 적용해주세요.
$content = mb_strimwidth(wp_strip_all_tags($content), 0, 250, '...', 'utf-8');
}
return $content;
}
문제는 1. 스샷과 같이 로그인 창이 뜨지 않습니다.ㅠㅠ
2. 본래 내용 구성이 띄어쓰기 없이 죽 써집니다. 기본 문단 모형 유지하면서 로그인 버튼 띄우고 싶습니다.ㅠㅠ
로그인창이 내용 중간에 뜨도록 하고 싶습니다.
어떻게 하면 될까요 ㅠㅠ
고생이 많으십니다.
감사합니다.
안녕하세요~^^
해당 코드에서 HTML 코드가 지워진 상태로 표시되는 건 wp_strip_all_tags 함수 때문입니다.
해당 함수에서 HTML 태그를 지운 후에 표시합니다.
코스모스팜 회원관리 플러그인을 사용 중이시라면
아래의 코드로 로그인 폼을 표시하실 수 있습니다.
add_filter('kboard_content', 'my_kboard_content', 10, 3);
function my_kboard_content($content, $content_uid, $board_id){
if(!is_user_logged_in() && $board_id == '13'){ // 실제 게시판 id로 적용해주세요.
$content = mb_strimwidth($content, 0, 250, '...', 'utf-8');
$content .= do_shortcode('[cosmosfarm_members_login_form]');
}
return $content;
}
위의 코드 중에서 아래의 코드를 찾아서
do_shortcode('[cosmosfarm_members_login_form]');
아래의 코드로 교체하시면 로그인 폼 대신 로그인 링크를 추가하실 수 있습니다.
'<a href="로그인페이지주소">로그인</a>';
위의 코드에서 로그인페이지주소 부분에는 실제 로그인 페이지 주소로 적용해보세요.
고맙습니다.