안녕하세요? 스레드봇님!
지난번 제목과 관련된 질의에서 답변해 주신 내용대로 처리하여 잘되고 있습니다.
그런데 '개인정보 제공 및 활용 동의'를 두번째 게시판에도 적용하고 싶은데,
아래의 코드를 어떻게 수정해야 하는지 문의드립니다.
add_filter('kboard_skin_fields', 'my_kboard_skin_fields', 10, 2);
function my_kboard_skin_fields($fields, $board){
if($board->id == '1'){ // 실제 적용될 게시판 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;
}
* 상기 내용에는 게시판 id가 '1'로 지정되어 있습니다.
정보제공 동의 항목을 추가하려는 게시판의 id는 '2'번 입니다.
도움을 부탁드립니다^^
그리고 아래의 내용은 수정없이 그대로 놔두면 되는 것인지도 문의드립니다^^
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 oneline-content" for="agree_checkbox">
<p class="field-name"><?php echo esc_html($field['field_name'] ? $field['field_name'] : $field['field_label'])?></p>
</label>
<div class="attr-value oneline-content" style="margin:0;">
<div style="margin: 0; padding: 5px 20px 5px 0px; height: 205px; line-height: 20px; background-color: #f2f2f2; overflow-y: auto;">
<ol>
<li><strong>수집 목적</strong> : 회원가입 및 서비스 신청 등과 관련된 상담안내</li>
<li><strong>수집 항목</strong> : 이름 ,전화번호, IP (자동수집)</li>
<li><strong>보유 및 이용기간</strong> : 상담 및 해당 업무 종료 후에 1년내 파기</li>
</ol>
<p style="font-size: 13px; padding-left: 20px; line-height: 20px;">※ 개인정보 수집 및 이용에 대해서 거부할 수 있으며, 거부 시에는 가입 및 상담 등의 안내 서비스를 받으실 수 없습니다.</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
$field_html = ob_get_clean();
}
return $field_html;
}
감사합니다!!!
스레드봇님, 안녕하세요?
게시판 1번과 2번에 위와 같이 '개인정보 제공 및 활용동의서'를 넣는 것은 성공했습니다.
참고로 게시판 1번과 2번은 동일한 내용이 아니고 약간 다르게 구성되어 있습니다.
아래에 해당 링크가 있습니다.
(게시판 1) http://tellnumber.co.kr/
* 문의사항 요지 *
게시판 1번은 정상적으로 작동되는데, 게시판 2번에서는 '보내기 버튼'을 누르면 정상적으로 발송은 되는데....
로그인 하셔야 합니다라는 경고 박스가 뜨면서, 홈페이지 로그인 화면으로 갑니다.
어떻게 처리해야 하는지, 문의를 드립니다^^;;;
스레드봇님, 빠른 답변 감사합니다^^
오늘이 금요일 오후라서 다음 주 월요일에나
답변을 받아볼 수 있으려나하고 생각했었는데요,
빠르고 쉽고 명확한 답변을 주셔서 고맙습니다.
제가 Contact-Form 스킨의 유용성을
최근에 매우 절감하고 있는데요,
널리 홍보 활동을 하겠습니다^^
감사합니다!!!
안녕하세요~^^
여러 게시판에 개인정보 동의 체크박스를 추가하시려면
올려주신 코드 중 아래의 코드를
$board->id == '1'
아래의 코드로 교체해보시겠어요?
in_array($board->id, array('1','2'))
위의 코드에서 숫자는 게시판 id입니다.
실제 게시판 id로 적용해주세요.
실제 표시되는 내용이 동일하다면
두번째 코드는 수정하지 않으셔도 됩니다.
만약, 다른 내용을 표시해야된다면
아래의 코드를 활용해서 게시판 별로 다른 내용을 표시할 수 있습니다.
if($field['field_type'] == 'agree_checkbox'){
if($board->id == '1'){
// 1번 게시판 내용
}
else if($board->id == '2'){
// 2번 게시판 내용
}
}
고맙습니다.