글목록에 여분필드 값 노출

글목록에 여분필드 값 노출

QA

글목록에 여분필드 값 노출

본문

http://sir.kr/qa/115492?stx=%EC%97%AC%EB%B6%84%ED%95%84%EB%93%9C&sst=wr_num&unanswered=0&s_tag=%EA%B7%B8%EB%88%84%EC%BB%A4%EB%A8%B8%EC%8A%A4

 

위 내용을 토대로 여분필드 추가하고 글내용에서는 여분필드 내용이 잘 출력됩니다.

목록에도 여분필드값을 노출하고 싶은데 출력이 안됩니다.

 

목록스킨에 아래와 같이 코드를 넣었습니다.

 

list.skin.php


<?php
if (!defined('ABSPATH')) exit; // 개별 페이지 접근 불가
//메타 데이터 초기화
$input_posts = array(
'wr_1' => '', //여분필드1
'wr_2' => '', //여분필드2
'wr_3' => '', //여분필드3 
'wr_4' => '', //여분필드4 
'wr_5' => '', //여분필드5 
'wr_6' => '', //여분필드6 
'wr_7' => '', //여분필드7 
'wr_8' => '', //여분필드8 
);
$input_posts = wp_parse_args(get_metadata(GCBOARD_META_TYPE, $wr_id, 'etc_inputs', true ), $input_posts);
// 선택옵션으로 인해 셀합치기가 가변적으로 변함

$colspan = 5;
if ($is_checkbox) $colspan++;
if ($is_good) $colspan++;
if ($is_nogood) $colspan++;
if (!$is_show_field['num']) $colspan--;
if (!$is_show_field['writer']) $colspan--;
if (!$is_show_field['visit']) $colspan--;
if (!$is_show_field['wdate']) $colspan--;

?>

 

그리고 출력될 부분에 아래와 같이 써줬는데 출력이 안되네요.

 


<?php echo $list[$i]['wr_1'] ?> ~ <?php echo $list[$i]['wr_2'] ?>

 

출력하려면 어찌해야하는지 부탁드려요!!

 

이 질문에 댓글 쓰기 :

답변 1

$input_posts = wp_parse_args(get_metadata(GCBOARD_META_TYPE, $wr_id'etc_inputs', true ), $input_posts);


리스트 화면에서는 위에서 $wr_id 값이 0 이므로, 아무런 값도 받아올수 없습니다. 

 

반복문 안에서

 

$input_posts = wp_parse_args(get_metadata(GCBOARD_META_TYPE, $list[$i]['wr_id']'etc_inputs', true ), $input_posts); 

 

이렇게 데이터를 가져오셔야 합니다.

 

그런 후에 

 

$list[$i] = array_merge( $list[$i], $input_posts );

 

하시면

 

$list[$i]['wr_1'] 와 

$list[$i]['wr_2'] 를 출력하실수 있습니다.

$list[$i] = array_merge( $list[$i], $input_posts );
위 부분도 리스트스킨파일에 입력하면 되는건가요?
입력을 하니 열람중이란 부분이 뜨네요;;;;

제가 개발자가 아니라서 잘 이해를 못하겠네요 ㅠㅠ

$input_posts = wp_parse_args(get_metadata(GCBOARD_META_TYPE, $list[$i]['wr_id'], 'etc_inputs', true ), $input_posts);
위 부분으로 수정해서 넣었는데 여전히 여분 필드값은 출력이 안되고 있어요 ㅠㅠ

list.skin.php 파일의 106번째 줄에 보시면

for ($i=0, $count_list = count($list); $i<$count_list; $i++) {

이렇게 반복문이 시작되는 부분이 있습니다.
아래와 같이 바꿔보시면 여분필드를 출력할수 있습니다.


        for ($i=0, $count_list = count($list); $i<$count_list; $i++) {
    
            //메타 데이터 초기화
            $input_posts = array(
            'wr_1' => '', //여분필드1
            'wr_2' => '', //여분필드2
            'wr_3' => '', //여분필드3 
            'wr_4' => '', //여분필드4 
            'wr_5' => '', //여분필드5 
            'wr_6' => '', //여분필드6 
            'wr_7' => '', //여분필드7 
            'wr_8' => '', //여분필드8 
            );

            $input_posts = wp_parse_args(get_metadata(GCBOARD_META_TYPE, $list[$i]['wr_id'], 'etc_inputs', true ), $input_posts);
            $list[$i] = array_merge( $list[$i], $input_posts );

            echo "<br>".$list[$i]['wr_1'];
            echo "<br>".$list[$i]['wr_2'];

답변을 작성하시기 전에 로그인 해주세요.
전체 7
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT