워드프레스의 한국형 게시판 플러그인인 KBoard에서 게시글 작성 후 표시되는 화면(페이지)를 변경하는 방법:
예를 들어, 게시판에서 게시글 작성 후에 "Thank you" 페이지가 표시되도록 하고 싶은 경우가 있을 수 있습니다. 이 경우 두 가지 방법을 통해 게시글 작성 후 표시되는 경로를 변경할 수 있습니다.
1) Kboard 소스 파일 수정
FTP로 접속하여 /kboard/class/KBController.class.php 파일을 보면 다음과 같은 코드가 있습니다.
$url = new KBUrl(); $next_page_url = $url->set('uid', $execute_uid)->set('mod', 'document')->toString(); $next_page_url = apply_filters('kboard_after_executing_url', $next_page_url, $execute_uid, $board_id); wp_redirect($next_page_url);
위에서 $next_page_url 부분을 수정하면 됩니다.
2) kboard_after_executing_url 필터 사용
위의 방법은 추후에 KBoard가 업데이트되면 수정한 부분이 사라지기 때문에 재수정해야 하는 번거로움이 있을 수 있습니다. 더 좋은 방법은 kboard_after_executing_url 필터를 사용하는 것입니다. (http://www.cosmosfarm.com/products/kboard/hooks 참고)
kboard_after_executing_url 필터 부분을 살펴보면:
그러면 다음과 비슷한 코드를 테마 함수에 추가하면 KBoard 게시글 작성 후 Thank you 페이지가 표시됩니다.
function kboard_redirected_url_modified( $next_page_url, $execute_uid, $board_id ) { $thankyou = 'http://www.abc.com/thank-you/'; $next_page_url = $thankyou; return $next_page_url; add_filter( 'kboard_after_executing_url', 'kboard_redirected_url_modified', 10, 3 );
위의 코드로 오류가 나면 $url = new KBUrl();을 추가해보세요. (add_filter에 대해서는 이 글을 참고하시기 바랍니다.)
- 데모 (양식 제출 후 Thank you 페이지 표시)
댓글 남기기