안녕하세요.
요번에 부동산관련 입력폼들을 만들다가
주소를 입력받아야하는 입력폼을 만들어야하는 상태입니다.
다음우편번호 서비스의 입력필드를 가져오고싶은데 php를 수정해서 입력창을 만들었는데
원하는 위치에 추가하는 방법을 모르겠습니다
입력필드구조 부분에 확장기능 필드들을 넣고 그 중간부분에 제가 원하는 다음우편번호 필드들을 만들어야하는데 못하겠습니다
도와주세요 ㅠㅠㅠ 가닥이라도 필요합니다
안녕하세요~^^
만약 최신 버전의 KBoard 플러그인을 사용 중이시라면
1. 워드프레스 관리자 -> KBoard ->게시판 목록 -> 게시판 선택 -> 입력필드 설정 페이지에서
확장필드인 텍스트 필드를 추가해주세요.
메타키는 postcode로 설정해주세요.
2. 워드프레스 관리자 -> 외모 -> 테마 편집기 페이지에서 functions.php 파일 하단에
아래의 코드를 추가해보세요.
add_filter('kboard_get_template_field_html', 'my_kboard_get_template_field_html', 10, 4);
function my_kboard_get_template_field_html($template, $field, $content, $board){
$meta_key = (isset($field['meta_key'])&&$field['meta_key']) ? $field['meta_key'] : '';
if($meta_key == 'postcode'){
$template = '<div class="kboard-attr-row">
<label class="attr-name" for="kboard_option_postcode">우편번호/주소</label>
<div class="attr-value">
<input type="text" id="kboard_option_postcode" name="kboard_option_postcode" value="'.$content->option->postcode.'" placeholder="우편번호..." style="width:100px">
<input type="text" id="kboard_option_address" name="kboard_option_address" value="'.$content->option->address.'" placeholder="주소...">
<button type="button" class="kboard-default-button-small" onclick="kboard_postcode_address_search()">우편번호/주소 검색</button>
</div>
</div>';
}
return $template;
}
3. FTP로 접속해서 /wp-content/plugins/kboard/skin/사용중인스킨/editor.php 파일의 제일 하단에
아래의 코드를 추가해주시면 됩니다.
<?php wp_enqueue_script('daum-postcode', 'https://spi.maps.daum.net/imap/map_js_init/postcode.v2.js', array(), '', true)?>
<script>
function kboard_postcode_address_search(){
var width = 500;
var height = 600;
new daum.Postcode({
width: width,
height: height,
oncomplete: function(data){
jQuery('#kboard_option_postcode').val(data.zonecode);
jQuery('#kboard_option_address').val(data.roadAddress);
setTimeout(function(){
jQuery('#kboard_option_address').focus();
});
}
}).open({
left: (screen.availWidth-width)*0.5,
top: (screen.availHeight-height)*0.5
});
}
</script>
추후 다양한 입력 필드를 더 간편하게 추가할 수 있는 방법을 고민해보겠습니다.
고맙습니다.
입력폼2개의 정보가 입력되는데 게시글에서는 첫번째 입력폼에 입력했던 내용만 보여지게됩니다
전부다 보여지게하고싶은 어떻게하나요?
안녕하세요.
테마의 functions.php 파일 하단에
아래의 코드를 추가해보시겠어요?
add_filter('kboard_document_add_option_value_field_html', 'my_kboard_document_add_option_value_field_html', 10, 4);
function my_kboard_document_add_option_value_field_html($html, $field, $content, $board){
if(isset($field['meta_key']) && $field['meta_key'] == 'postcode'){
$html = '<div class="kboard-document-add-option-value meta-key-postcode"><span class="option-name">우편번호</span> : ' . nl2br($content->option->postcode) . '</div><hr>';
$html .= '<div class="kboard-document-add-option-value meta-key-address"><span class="option-name">주소</span> : ' . nl2br($content->option->address) . '</div><hr>';
}
return $html;
}
고맙습니다.