원더풀 제품소개 스킨에서 입력필드마다 클래스 다르게 주는 방법

안녕하세요~

KBoard 원더풀 제품소개 스킨 사용하는데, 

입력필드 설정에서 - 필드를 text나 radio 버튼이나 여러개 만들면 글쓰기시에만 설정한 meta class명이 나오는데, 

예시) <div class="kboard-attr-row kboard-attr-text meta-key-128name required">
 

document 화면에서는 div에 class명이 다 동일하게 나오는데,

예시) <div class="kboard-document-add-option meta-key-text"></div>

필드마다 class명을 다르게 줄 수 있을까요?

아니면 글쓰기페이지처럼 meta 클리스명을 동일하게 줄 수 있나요?

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

    KBoard 원더풀 제품소개 스킨 게시글 본문 페이지에서

    각 입력 필드의 클래스를 다르게 표시되게 하시려면

    아래의 코드를 활용해보시겠어요?

    add_filter('kboard_document_add_option_value_field_html', 'kboard_document_add_option_value_field_html_20201229', 999, 4);
    function kboard_document_add_option_value_field_html_20201229($value_html, $field, $content, $board){
    	if($board->skin == 'wonderful-product'){
    		
    		$meta_key = (isset($field['meta_key']) && $field['meta_key']) ? $field['meta_key'] : '';
    		$field_type = (isset($field['field_type']) && $field['field_type']) ? $field['field_type'] : '';
    		
    		if($field_type == 'file'){
    			$url = new KBUrl();
    			$option_value = isset($content->attach->{$meta_key}) ? $content->attach->{$meta_key} : array();
    			$download_button = "<a href=\"#\" onclick=\"window.location.href='{$url->getDownloadURLWithAttach($content->uid, $meta_key)}';return false;\" title=\"" . sprintf(__('Download %s', 'kboard'), $option_value[1]) . "\">{$option_value[1]}</a>";
    			$value_html = sprintf('<div class="kboard-document-add-option meta-key-%s"><div class="option-name">%s</div><div class="option-value">%s</div></div>', $meta_key, $field['field_name'], $download_button);
    		}
    		else if($field_type == 'textarea'){
    			$value_html = sprintf('<div class="kboard-document-add-option meta-key-%s"><div class="option-name">%s</div><div class="option-value">%s</div></div>', $meta_key, $field['field_name'], nl2br($content->option->{$meta_key}));
    		}
    		else if($field_type == 'wp_editor'){
    			$value_html = sprintf('<div class="kboard-document-add-option meta-key-%s"><div class="option-name">%s</div><div class="option-value">%s</div></div>', $meta_key, $field['field_name'], wpautop($content->option->{$meta_key}));
    		}
    		else if(is_array($content->option->{$meta_key})){
    			$value_html = sprintf('<div class="kboard-document-add-option meta-key-%s"><div class="option-name">%s</div><div class="option-value">%s</div></div>', $meta_key, $field['field_name'], implode(', ', $content->option->{$meta_key}));
    		}
    		else{
    			$value_html = sprintf('<div class="kboard-document-add-option meta-key-%s"><div class="option-name">%s</div><div class="option-value">%s</div></div>', $meta_key, $field['field_name'], $content->option->{$meta_key});
    		}
    	}
    	
    	return $value_html;
    }

    워드프레스에서 에러 혹은 알 수 없는 문제가 있을 때 대응 방법을 참고하셔서

    다른 에러 메시지나 충돌이 있는지 점검해보셔야 할 듯합니다.

    고맙습니다.

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