안녕하세요 수고 많으십니다.
궁금한점이 있어 질문드립니다.
근데 각 게시판 마다 모두 똑같이 적용이 되버려서 문제입니다.
1번과 2번 게시판이 개인정보보호 내용이 다릅니다.
내용이 다르게 나올 수 있도록 하는 방법이 있을까요?
add_filter('kboard_skin_fields', 'my_kboard_skin_fields', 10, 2);
function my_kboard_skin_fields($fields, $board){
if($board->id == '65'){ // 실제 적용될 게시판 ID 값으로 변경해주세요.
if(!isset($fields['agree_checkbox'])){
$fields['agree_checkbox'] = array(
'field_type' => 'agree_checkbox',
'field_label' => '개인정보보호',
'class' => 'kboard-attr-checkbox',
'hidden' => '',
'meta_key' => '',
'field_name' => '',
'permission' => '',
'roles' => '',
'default_value' => '',
'placeholder' => '',
'required' => '',
'show_document' => '',
'description' => '',
'close_button' => 'yes'
);
}
}
return $fields;
}
add_filter('kboard_get_template_field_html', 'my_kboard_get_template_field_html', 10, 4);
function my_kboard_get_template_field_html($field_html, $field, $content, $board){
if($field['field_type'] == 'agree_checkbox'){
ob_start();
?>
<div class="kboard-attr-row meta-key-<?php echo esc_attr($field['meta_key'])?> required">
<label class="attr-name" for="agree_checkbox" style="display:none">
<span class="field-name"><?php echo esc_html($field['field_name'] ? $field['field_name'] : $field['field_label'])?></span>
</label>
<div class="attr-value" style="margin:0;">
<div style="margin: 20px 0; padding: 10px; height:150px; background-color: #f2f2f2; overflow-y: auto; font-size: 16px;">
<p>개인정보보호</p>
<p>이곳이 개인정보 내용입니다. 게시판 별로 다른 내용이 가능할까요?</p>
</div>
<div style="text-align:center;">
<input type="hidden" class="required" name="kboard_option_<?php echo esc_attr($field['meta_key'])?>" value="1">
<label><input type="checkbox" class="required" name="kboard_option_<?php echo esc_attr($field['meta_key'])?>" value="1"><font size="3px"> 위의 내용에 동의합니다.</font></label>
</div>
</div>
</div>
<?php
$field_html = ob_get_clean();
}
return $field_html;
}
안녕하세요 위 소스좀 살펴봐주세요^^;;
감사합니다.
게시판이 46, 54 가 1번 내용
65번이 2번 개인정보 내용이 나와야 할때
이렇게 하면 되나요? 오류가 나서요... 한번 봐주세요 소스 ㅜㅜ
add_filter('kboard_skin_fields', 'my_kboard_skin_fields', 10, 2);
function my_kboard_skin_fields($fields, $board){
if(in_array($board->id, array('46','54','65')){ // 실제 적용될 게시판 ID 값으로 변경해주세요.
if(!isset($fields['agree_checkbox'])){
$fields['agree_checkbox'] = array(
'field_type' => 'agree_checkbox',
'field_label' => '저작권 동의 내용',
'class' => 'kboard-attr-checkbox',
'hidden' => '',
'meta_key' => '',
'field_name' => '',
'permission' => '',
'roles' => '',
'default_value' => '',
'placeholder' => '',
'required' => '',
'show_document' => '',
'description' => '',
'close_button' => 'yes'
);
}
}
return $fields;
}
add_filter('kboard_get_template_field_html', 'my_kboard_get_template_field_html', 10, 4);
function my_kboard_get_template_field_html($field_html, $field, $content, $board){
if($field['field_type'] == 'agree_checkbox'){
if(in_array($board->id, array('46','54')){
ob_start(); ?>
?>
<div class="kboard-attr-row meta-key-<?php echo esc_attr($field['meta_key'])?> required">
<label class="attr-name" for="agree_checkbox" style="display:none">
<span class="field-name"><?php echo esc_html($field['field_name'] ? $field['field_name'] : $field['field_label'])?></span>
</label>
<div class="attr-value" style="margin:0;">
<div style="margin: 20px 0; padding: 10px; height:150px; background-color: #f2f2f2; overflow-y: auto; font-size: 16px;">
<p>1번 개인정보내용</p>
<p>1번 이곳이 개인정보 내용입니다. </p>
</div>
<div style="text-align:center;">
<input type="hidden" class="required" name="kboard_option_<?php echo esc_attr($field['meta_key'])?>" value="1">
<label><input type="checkbox" class="required" name="kboard_option_<?php echo esc_attr($field['meta_key'])?>" value="1"><font size="3px"> 위의 내용에 동의합니다.</font></label>
</div>
</div>
</div>
}
else if($board->id == '65'){
<div class="kboard-attr-row meta-key-<?php echo esc_attr($field['meta_key'])?> required">
<label class="attr-name" for="agree_checkbox" style="display:none">
<span class="field-name"><?php echo esc_html($field['field_name'] ? $field['field_name'] : $field['field_label'])?></span>
</label>
<div class="attr-value" style="margin:0;">
<div style="margin: 20px 0; padding: 10px; height:150px; background-color: #f2f2f2; overflow-y: auto; font-size: 16px;">
<p>2번개인정보보호</p>
<p>2번 이곳이 개인정보 내용입니다. </p>
</div>
<div style="text-align:center;">
<input type="hidden" class="required" name="kboard_option_<?php echo esc_attr($field['meta_key'])?>" value="1">
<label><input type="checkbox" class="required" name="kboard_option_<?php echo esc_attr($field['meta_key'])?>" value="1"><font size="3px"> 위의 내용에 동의합니다.</font></label>
</div>
</div>
</div>
}
<?php
$field_html = ob_get_clean();
}
return $field_html;
}
안녕하세요~^^
아래 참고할만한 링크를 남겨드릴테니 참고해서 코드를 수정해보시겠어요?
다른 내용을 표시해야 할 때 사용하는 코드가 있습니다.
https://www.cosmosfarm.com/threads/document/32858
고맙습니다.