테스트 사이트 - 개발 중인 베타 버전입니다

여분필드 문의 채택완료

miok 10년 전 조회 4,301

그누보드엔 여분필드 wr_1 ~ wr_10 까지가 있는데

 

그누프레스엔 여분필드가 있지않은거같아서..

 

여분필드사용할수있는 방법이 궁금합니다..

 

 

 

어느 테이블에 필드를 추가해야하는지...

 

 

댓글을 작성하려면 로그인이 필요합니다.

답변 4개

채택된 답변
+20 포인트
thisgun
10년 전

테이블에 필드를 저장하셔도 됩니다만...

 

메타 테이블에 데이터를 넣는것을 권장합니다.

 

넣는 방법은 

 

사용하시는 스킨폴더에

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">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 ); 

 

이렇게 가져오시면 됩니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

亞波治
10년 전
또 하나 배웁니다. 감사합니다....^^
m
miok
10년 전
전혀 작동을 안하네요.. 감사합니다.. 초보로서는 너무 어려운 과정이었네요...

댓글을 작성하려면 로그인이 필요합니다.

m
10년 전

아.. 이부분...

/bbs/write_update.php에서

239줄도 추가해줘야.. 데이터저장이 가능하네요...... -0- 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

m
10년 전

db에 정상적으로 입력이 안되네요... ㅜㅜ.. 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

10년 전

wp_g5_write 테이블에 필드를 만들면 될것 같은데요.

 

그누프레스는 원본글과 댓글 테이블이 나누어져 있군요....^^;; 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 6개

m
miok
10년 전
wp_g5_write 테이블에 필드를 만들었는데 동작이 되질 않네요.. 왜이럴까요.. ' ㅇ';;;;
亞波治
10년 전
필드 불러올때 어떻게 하셨나요?
m
miok
10년 전
<input type='text' name='wr_1' value="<?php echo esc_attr( $wr_1 ); ?>" class="frm_input" size="50" maxlength="100">

애는.. 뭔가 이상한거같아요......... 아 슬프네요....... T.T
亞波治
10년 전
$list[$i]['wr_1'] 또는 $view['wr_1'] 이렇게 해보세요.
m
miok
10년 전
write.skin 에는 <input type='text' name='wr_1' value="<?php echo esc_attr( $wr_1 ); ?>" class="frm_input" size="50" maxlength="100"> 적었고

view.skin 에는
<?php echo g5_get_view_thumbnail($view['wr_1'] ?> 라고 적었습니다.......

살려주세영.... 엉엉...
亞波治
10년 전
db에는 정상적으로 입력이 되었나요?

게시판 보기에서는 <?php echo $view['wr_1'] ?> 로 해야 출력이 되는것 같네요.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인