필드 추가시 설명부분에 줄바꿈 태그 적용 가능할까요?

안녕하세요.

에스크원 상담 스킨을 적용한 화면입니다.

https://imgur.com/VrCbpCK

이 화면 처럼 체크박스를 이용해 개인정보처리방침이라는 필드를 만들었습니다.

실제화면에서는

https://imgur.com/fR7Z39s

이렇게 출력이되구요.

그런데 설명부분에 수집항목등에 대해 적었는데 이 부분에 태그가 적용되지 않는 것 같은데 줄바꿈을 적용시킬 수 있는 방법이 있을까요?

 

감사합니다.

 

 

좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
워드프레스 에러 기술지원 서비스 전문가에게 맡기세요
  • 안녕하세요~^^

    KBoard 플러그인 입력 필드를 지원하는 스킨을 사용 중이시라면

    게시글 작성 페이지에 표시되는 필드 설명은 보안을 위해 이스케이프 처리하고 있습니다.

    워드프레스 내장 함수인 esc_html 함수를 활용하고 있는데요.

     

    체크박스의 설명 부분에 HTML 태그를 적용되게 하시려면

    아래의 코드를 활용해보세요.

    add_filter('kboard_get_template_field_html', 'kboard_get_template_field_html_20201218', 10, 4);
    function kboard_get_template_field_html_20201218($field_html, $field, $content, $board){
    	$fields = $board->fields();
    	$meta_key = isset($field['meta_key']) ? $field['meta_key'] : '';
    	$field_name = (isset($field['field_name']) && $field['field_name']) ? $field['field_name'] : $field['field_label'];
    	$required = (isset($field['required']) && $field['required']) ? $field['required'] : '';
    	
    	if($meta_key == '메타키' && $board->id == '1'){ // 실제 게시판 id로 적용해보세요.
    		$default_value = array();
    		if(isset($field['row']) && $field['row']){
    			foreach($field['row'] as $item){
    				if(isset($item['label']) && $item['label']){
    					$row = true;
    					
    					if(isset($item['default_value']) && $item['default_value']){
    						$default_value[] = $item['label'];
    					}
    				}
    			}
    		}
    		
    		ob_start();
    		?>
    		<?php if(isset($field['row']) && $field['row']):?>
    		<div class="kboard-attr-row <?php echo esc_attr($field['class'])?> meta-key-<?php echo esc_attr($meta_key)?> <?php echo esc_attr($required)?>">
    			<label class="attr-name" for="<?php echo esc_attr($meta_key)?>"><span class="field-name"><?php echo esc_html($field_name)?></span><?php if($required):?> <span class="attr-required-text">*</span><?php endif?></label>
    			<div class="attr-value">
    				<input type="hidden" name="<?php echo esc_attr($fields->getOptionFieldName($meta_key))?>" value="">
    				<?php foreach($field['row'] as $option_key=>$option_value):?>
    					<?php if(isset($option_value['label']) && $option_value['label']):?>
    						<?php if($content->option->{$meta_key}):?>
    							<label class="attr-value-label"><input type="checkbox" name="<?php echo esc_attr($fields->getOptionFieldName($meta_key))?>[]"class="<?php echo esc_attr($required)?>"<?php if($fields->isSavedOption($content->option->{$meta_key}, $option_value['label'])):?> checked<?php endif?> value="<?php echo esc_attr($option_value['label'])?>"> <?php echo esc_html($option_value['label'])?></label>
    						<?php else:?>
    							<label class="attr-value-label"><input type="checkbox" name="<?php echo esc_attr($fields->getOptionFieldName($meta_key))?>[]"class="<?php echo esc_attr($required)?>"<?php if($default_value && in_array($option_value['label'], $default_value)):?> checked<?php endif?> value="<?php echo esc_attr($option_value['label'])?>"> <?php echo esc_html($option_value['label'])?></label>
    						<?php endif?>
    					<?php endif?>
    				<?php endforeach?>
    				<?php if(isset($field['description']) && $field['description']):?><div class="description"><?php echo $field['description']?></div><?php endif?>
    			</div>
    		</div>
    		<?php endif?>
    		<?php
    		$field_html = ob_get_clean();
    	}
    	
    	return $field_html;
    }

    위의 코드에서 $meta_key == '메타키' 부분은 실제 입력 필드의 메타키로 적용해보세요.

    $board->id == '1' 부분은 실제 게시판 id로 적용해주세요.

    테마의 functions.php 파일에 코드를 추가하거나 Code Snippets 플러그인을 사용해서 코드를 추가할 수 있습니다.

    고맙습니다.

좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기