입력필드 표시권한이 제한없음, 로그인 사용자, 직접선택으로 구분되어 있습니다.
회원이 아닌 비회원에게만 표시할 수 있는 선택방법이 없을까요?
현재 작성자 이름의 경우 비회원일때만 표시, 항상숨김, 항상표시로 구분되어 있습니다.
커스텀 필드도 이름 필드처럼 동일하게 구분이 가능할까요?
참고로 아래 링크처럼 개인정보 동의는 비회원에게
민감정보 동의 회원에게만 띄우려고 하는데 현재 표시권한으로는 설정이 되지 않습니다.
안녕하세요~^^
비회원만 개인정보동의 필드를 출력하시려면
아래 코드를 테마 functions.php에 추가해보시겠어요?
add_filter('kboard_skin_fields', 'my_kboard_skin_fields_210618', 10, 2);
function my_kboard_skin_fields_210618($fields, $board){
if($board->id == '1'){ // 실제 적용될 게시판 ID 값으로 변경해주세요.
if(!isset($fields['agree_checkbox3'])){
$fields['agree_checkbox3'] = array(
'field_type' => 'agree_checkbox3',
'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_210618', 10, 4);
function my_kboard_get_template_field_html_210618($field_html, $field, $content, $board){
if($field['field_type'] == 'agree_checkbox3'){
ob_start();
?>
<?php if(!is_user_logged_in()):?>
<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: 100px; background-color: #f2f2f2; overflow-y: auto;">
<p>정보통신망법 규정에 따라 OOO에 회원가입 신청하시는 분께 수집하는 개인정보의 항목, 개인정보의 수집 및 이용목적, 개인정보의 보유 및 이용기간을 안내 드리오니 자세히 읽은 후 동의하여 주시기 바랍니다.</p>
<p>1. 수집하는 개인정보</p>
<p>2. 수집한 개인정보의 이용</p>
<p>3. 개인정보의 파기</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"> 개인정보 제공 및 활용에 동의합니다.</label>
</div>
</div>
</div>
<?php endif?>
<?php
$field_html = ob_get_clean();
}
return $field_html;
}
고맙습니다.