여분필드 문의
본문
그누보드엔 여분필드 wr_1 ~ wr_10 까지가 있는데
그누프레스엔 여분필드가 있지않은거같아서..
여분필드사용할수있는 방법이 궁금합니다..
어느 테이블에 필드를 추가해야하는지...
답변 4
테이블에 필드를 저장하셔도 됩니다만...
메타 테이블에 데이터를 넣는것을 권장합니다.
넣는 방법은
사용하시는 스킨폴더에
write_update.skin.php 파일을 만들어서 아래와 같이 작성해 줍니다.
//여분필드
$etc_array = array();
$etc_array['wr_1'] = isset($_POST['wr_1']) ? sanitize_text_field($_POST['wr_1']) : '';
$etc_array['wr_2'] = isset($_POST['wr_2']) ? sanitize_text_field($_POST['wr_2']) : '';
$etc_array['wr_3'] = isset($_POST['wr_3']) ? sanitize_text_field($_POST['wr_3']) : '';
$etc_array['abc'] = isset($_POST['abc']) ? sanitize_text_field($_POST['abc']) : '';
update_metadata( G5_META_TYPE, $wr_id, 'g5_etc', $etc_array );
위와 같이 해 놓으시면 g5_write_meta 테이블에 데이터가 저장됩니다.
sanitize_text_field 함수는 입력받은 데이터를 필터링 하는 함수입니다.
데이터를 체크하는 함수는 각기 다르니 아래 링크를 참고하셔서 적절히 사용해 주세요.
http://codex.wordpress.org/Validating_Sanitizing_and_Escaping_User_Data
데이터를 꺼내 오는 방법은
사용 하시는 스킨폴더 view.skin.php 에서
$etc_values = get_metadata(G5_META_TYPE, $wr_id, 'g5_etc', true );
print_r( $etc_values );
이렇게 가져오시면 됩니다.
wp_g5_write 테이블에 필드를 만들면 될것 같은데요.
그누프레스는 원본글과 댓글 테이블이 나누어져 있군요....^^;;
db에 정상적으로 입력이 안되네요... ㅜㅜ..
아.. 이부분...
/bbs/write_update.php에서
239줄도 추가해줘야.. 데이터저장이 가능하네요...... -0-