<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
	<channel>
				<title><![CDATA[게시판 커스텀 필드 추가시 본문에서 조회가 안되는 현상 문의드립니다.]]></title>
		<link>https://www.cosmosfarm.com/threads/rss/document/52322</link>
		<description><![CDATA[<p>안녕하세요. 투표 기능을 만들기 위해서 게시판 필드 커스텀 중 해결되지 않는 부분이 있어 문의드립니다.</p>

<p><a href="https://blog.cosmosfarm.com/archives/214/kboard-%EC%BC%80%EC%9D%B4%EB%B3%B4%EB%93%9C-%EA%B2%8C%EC%8B%9C%ED%8C%90%EC%97%90-%EC%83%88%EB%A1%9C%EC%9A%B4-%ED%95%84%EB%93%9C-%EC%B6%94%EA%B0%80%ED%95%98%EA%B8%B0/">https://blog.cosmosfarm.com/archives/214/kboard-%ec%bc%80%ec%9d%b4%eb%b3%b4%eb%93%9c-%ea%b2%8c%ec%8b%9c%ed%8c%90%ec%97%90-%ec%83%88%eb%a1%9c%ec%9a%b4-%ed%95%84%eb%93%9c-%ec%b6%94%ea%b0%80%ed%95%98%ea%b8%b0/</a></p>

<p>구현은 위 링크를 참조했습니다.</p>

<p>먼저, 아래와 같이 입력 필드를 설정했습니다.</p>

<pre>
<code class="language-php">add_filter('kboard_skin_fields', 'survey_kboard_skin_fields', 10, 2);
function survey_kboard_skin_fields($fields, $board){
    
    if($board-&gt;id == '1'){ // 실제 적용될 게시판 ID 값으로 변경해주세요.
        
        if(!isset($fields['survey'])){
            $fields['survey'] = array(
                'field_type' =&gt; 'survey',
                'class' =&gt; 'kboard-attr-text',
                'hidden' =&gt; '',
                'meta_key' =&gt; '',
                'field_name' =&gt; '',
                'permission' =&gt; '',
                'roles' =&gt; '',
                'default_value' =&gt; '',
                'placeholder' =&gt; '',
                'required' =&gt; '',
                'show_document' =&gt; '',
                'description' =&gt; '',
                'close_button' =&gt; 'yes'
            );
        }
    }
    return $fields;
}
</code></pre>

<p> </p>

<p>또한, 아래와 같이 게시글 작성시 보여지는 필드를 작성했습니다.</p>

<pre>
<code class="language-php">add_filter('kboard_get_template_field_html', 'survey_kboard_get_template_field_html', 10, 4);
function survey_kboard_get_template_field_html($field_html, $field, $content, $board){
    
    if($field['field_type'] == 'survey'){
        
        ob_start();
        ?&gt;
        &lt;div class="kboard-attr-row"&gt;
			&lt;input type="hidden" name="kboard_option_dynamic_field_index" value="&lt;?php echo intval($content-&gt;option-&gt;dynamic_field_index)?&gt;"&gt;		
			
            &lt;label class="attr-name" for="kboard_option_survey"&gt;투표&lt;/label&gt;
            &lt;div class="attr-value"&gt;
				
                &lt;button type="button" id='survey_add_btn' class="kboard-default-button-small" onclick="kboard_survey_add_question()"&gt;+&lt;/button&gt;
				&lt;button type="button" id='survey_remove_btn' class="kboard-default-button-small" onclick="kboard_survey_remove_question()"&gt;-&lt;/button&gt;
            &lt;/div&gt;
        &lt;/div&gt;
        &lt;script&gt;
        function kboard_survey_add_question(){
			var index = parseInt(jQuery('input[name=kboard_option_dynamic_field_index]').val()) + 1;
			jQuery('input[name=kboard_option_dynamic_field_index]').val(index);
			var name = 'kboard_option_survey' +  index;
			var tag = '&lt;input type="text" class="kboard_option_survey" name="'+name+'" value="" placeholder="향을 입력해 주세요" style="width:150px"&gt; &lt;br&gt;';
			jQuery("#survey_add_btn").before(jQuery.parseHTML(tag));

        }
		function kboard_survey_remove_question(){
			var q_list = jQuery('.kboard_option_survey');
			if(q_list.length &gt;0){
				jQuery(q_list[q_list.length-1]).next().remove();
				jQuery(q_list[q_list.length-1]).remove();
				
			}
			var index = parseInt(jQuery('input[name=kboard_option_dynamic_field_index]').val()) - 1;
			jQuery('input[name=kboard_option_dynamic_field_index]').val(index);
		}
        &lt;/script&gt;
        &lt;?php
        $field_html = ob_get_clean();
    }
    
    return $field_html;
}</code></pre>

<p>여기까지 작성을 했을때는 db 상에도 아래 이미지와 같이 데이터가 잘 들어가고, 게시판에 필드도 잘 생성이 됩니다.</p>

<p><a href="https://imgur.com/QU3cHWo">db 이미지</a></p>

<p><a href="https://imgur.com/eCLSxiT">게시판 이미지</a></p>

<p> </p>

<p>그런데 작성된 게시글 본문에서는 아예 데이터 조회가 되지 않습니다. </p>

<p>아래와 같이 echo만 찍어봐도 게시글 본문에서는 전혀 확인이 되지 않네요.</p>

<pre>
<code class="language-php">add_filter('kboard_document_add_option_value_field_html', 'survey_kboard_document_add_option_value_field_html', 10, 4);
function survey_kboard_document_add_option_value_field_html($value_html, $field, $content, $board){
    echo "TEST1";
    if($field['field_type'] == 'survey'){
		echo 'TEST2';
    }
	$value_html = '';
    return $value_html;
}
</code></pre>

<p><a href="https://imgur.com/undefined">게시글 조회 테스트</a></p>

<p> </p>

<p>며칠간 분석해보았지만, 원인을 도저히 못찾겠습니다.</p>

<p>echo도 안되는 걸 보면 아예 등록한 필터가 작동하지 않는 것 같은데, 무엇이 원인일지 번거로우시겠지만 확인하여 주시면 감사하겠습니다.</p>]]></description>
		<copyright>Copyright 2026, 코스모스팜</copyright>
				<item>
			<title><![CDATA[안녕하세요~^^

입력 필드 설정 중 게시글 본문에 표시 체크박스는 체크되어 있는지요?

입력 필드의 메...]]></title>
			<link>https://www.cosmosfarm.com/threads/document/52329</link>
			<description><![CDATA[<p>안녕하세요~^^</p>

<p>입력 필드 설정 중 게시글 본문에 표시 체크박스는 체크되어 있는지요?</p>

<p>입력 필드의 메타키(옵션키)가 survey라면</p>

<p>$content-&gt;option-&gt;survey에 값이 저장이돼야 정상적으로 표시됩니다.</p>

<p>올려주신 이미지를 보면 DB에 저장된 값은</p>

<p>$content-&gt;option-&gt;survey1, $content-&gt;option-&gt;survey2 값입니다.</p>

<p>그렇기 때문에 필드 타입이 survey가 아닌 survey1로 교체해서 적용하시면 해당 코드가 실행될 듯합니다.</p>

<p> </p>

<p>또, kboard_skin_fields 필터로 입력 필드 추가 시</p>

<p>field_label 설정이 없다면 에러가 발생할 수 있습니다.</p>

<p>올려주신 링크를 참고하셔서 field_label도 추가해보시겠어요?</p>

<p>고맙습니다.</p>]]></description>
			<author>스레드봇</author>
			<pubDate>Fri, 23 Apr 2021 05:14:58 +0000</pubDate>
			<category>KBoard</category>
		</item>
			</channel>
</rss>