워드프레스 게시판 KBoard(케이보드) 스킨 파일 중 list.php에 보면..
글을 작성한 date가 나오는 리스트가 있습니다.
새로 칼럼을 하나 추가해서 만료일이라는걸 만들어 주고 싶은데 쉽지않네요..
먼저 date를 가져와서 1달을 뺄겁니다..
글작성한게 1달이 지나면 자동으로 글이 삭제되는걸 구현하고 싶은데
어떻게 해야 할지 막막하네요..
일단 스킨 아래에있는 스크립트에 테스트 용도로
var test = "test!!";
console.log(test) 를 해서 출력을했더니
브라우저에서 콘솔이 출력이 안되더군요 그래서 글쓰기를 눌렀더니 스크립트가 실행이되는겁니다.
이걸로 미루어보건데.. 글작성을 눌러야 스킨아래에있는 script.js가 로드 되는걸 알았습니다.
그렇다면 처음 게시판에 들어왔을때 실행하는 스크립트는 어디있는지 궁금하네요..
왜냐면 처음 리스트에 들어왔을때 바로 글을 작성한 작성일로 변수를 담아서 계산을 해주고싶거든요 ..ㅠㅠ
제가 생각한게 맞다면..
오늘날짜 - 글을 작성한 작성일 을 빼서 이게 0보다 적으면 삭제를 시키는걸 하고싶은데요..
이게 가능한건지 질문드립니다..
감사합니다.
답변 감사합니다 많은 도움이 되었습니다!
워드프레스 액션과 필터를 잘 모르신다면 어려움이 있을 듯합니다.
아래의 링크들을 참고해보시겠어요?
https://developer.wordpress.org/reference/functions/add_filter/
https://developer.wordpress.org/reference/functions/add_action/
고맙습니다.
제가 코드를 만들어서 사용했는데요..
add_action('kboard_list_from', 'testing');
function testing($content_list){
echo $content_list->content->getDate();
}
출력이 안되네요..??
이렇게 사용하는게 아닌가요??
하고싶은건 지금
리스트 시작인 <td class="kboard-list-date"><?php echo __('Date', 'kboard')?></td>
이것에 tbody 에 들어가는 <td class="kboard-list-date"><?php echo $content->getDate()?></td>
이거를 액션을 이용하여 날자끼리 빼서 만료일을 계산하고 싶은데 위처럼 쓰면 안되는건가요??;
2가지의 방법을 안내해드리겠습니다.
편한 방법을 이용하시면 됩니다.
1. 워드프레스 관리자 -> 외모 -> 테마 편집기 페이지에서 functions.php 파일 하단에
새로운 코드를 추가하시면 됩니다.
2. FTP로 접속해서 /wp-content/themes/사용중인테마/functions.php 파일 하단에
새로운 코드를 추가하시면 됩니다.
PHP 출력 코드는 echo와 print_r입니다.
브라우저 콘솔이 아닌 액션이나 필터가 실행되는 페이지에서 출력이 됩니다.
echo에 대한 내용은 아래의 링크를 참고해보시겠어요?
http://php.net/manual/en/function.echo.php
print_r에 대한 내용은 아래의 링크를 참고해보시겠어요?
http://php.net/manual/en/function.print-r.php
고맙습니다.
답변 감사합니다.
워드프레스에 있는 add_action함수는 어디 가서 수정할 수 있는지 알 수 있을까요?
또 브라우저 콘솔창에 값을 찍어 볼 때는 어떻게 해야 되는지 알고 싶습니다.
안녕하세요~^^
일정 기간이 지난 게시글을 삭제하는 기능은 아직 지원하지 않고 있습니다.
직접 프로그램을 만드셔야 할 듯합니다.
list.php 파일에 있는 $content->getDate() php 코드를 이용하시면
자바스크립트 코드보다 더 간단하게 해결할 수 있을 듯합니다.
kboard_list_where 필터를 사용하시면 게시글 리스트의 DB 쿼리를 편집하실 수 있습니다.
아래의 링크를 참고해보시겠어요?
http://www.cosmosfarm.com/products/kboard/hooks
추후 KBoard 플러그인에서 일정 기간이 지난 게시글 삭제를 검토해보겠습니다.
고맙습니다.