안녕하세요!! kobard 버전:5.4.2 스킨:contact-form 이용중입니다.
체크박스 필드에 한개만 선택시에는 잘 출력되는데, 다중 선택시 Array라고 출력 됩니다.
어떻게 해야 다중선택한 항목을 다 노출할 수 있을까요?
admin-document.php
<div class="kboard-content" itemprop="description">
<div class="content-view">
<p><?php echo __('관심분야', 'kboard')?> : <?php echo $content->option->{'5d96027bdb1ad'}?></p>
<?php echo $content->getDocumentOptionsHTML()?>
<?php echo $content->content?>
</div>
editor.php
<div class="kboard-attr-row kboard-attr-checkbox meta-key-5d96027bdb1ad ">
<label class="attr-name" for="5d96027bdb1ad"><span class="field-name">관심분야</span></label>
<div class="attr-value">
<input type="hidden" name="kboard_option_5d96027bdb1ad" value="">
<label class="attr-value-label"><input type="checkbox" name="kboard_option_5d96027bdb1ad[]" class="" value="시민운동"> 시민운동</label>
<label class="attr-value-label"><input type="checkbox" name="kboard_option_5d96027bdb1ad[]" class="" value="청소년지원활동"> 청소년지원활동</label>
<label class="attr-value-label"><input type="checkbox" name="kboard_option_5d96027bdb1ad[]" class="" value="평화통일운동"> 평화통일운동</label>
<label class="attr-value-label"><input type="checkbox" name="kboard_option_5d96027bdb1ad[]" class="" value="살기좋은 지역사회만들기"> 살기좋은 지역사회만들기</label>
<label class="attr-value-label"><input type="checkbox" name="kboard_option_5d96027bdb1ad[]" class="" value="영유아보육기관"> 영유아보육기관</label>
<label class="attr-value-label"><input type="checkbox" name="kboard_option_5d96027bdb1ad[]" class="" value="No 플라스틱운동"> No 플라스틱운동</label>
<label class="attr-value-label"><input type="checkbox" name="kboard_option_5d96027bdb1ad[]" class="" value="기타"> 기타</label>
</div>
</div>
안녕하세요~^^
KBoard 플러그인 게시글 작성 시 체크박스 필드는 여러 개 체크할 경우
배열 형태로 저장됩니다.
올려주신 코드 중 아래의 코드를
<?php echo $content->option->{'5d96027bdb1ad'}?>
아래의 코드로 교체해보시겠어요?
<?php echo implode(', ', $content->option->{'5d96027bdb1ad'})?>
위의 코드를 적용하시면 배열로 저장된 값 들을 콤마(,)로 구분해서 표시합니다.
KBoard 플러그인 5.4.2 버전의 Contact Form 스킨을 사용 중이시라면
게시글 본문 페이지에서 입력 필드를 표시할 때 별도의 코드를 수정하지 않고도 가능합니다.
워드프레스 관리자 -> KBoard -> 게시판 목록 -> 게시판 선택 -> 입력필드 설정 탭에서
체크박스 필드의 설정 중 게시글 본문에 표시를 체크해보시겠어요?
고맙습니다.
답변 감사합니다! 다중선택시 콤마로 구분되어 출력됩니다.
그런데 하나만 선택했을 시에는 아무것도 출력이 안됩니다ㅜ
안녕하세요.
해당 값이 배열인지 체크해서 표시를 해줘야 할 듯합니다.
기존 코드 대신 아래의 코드로 교체해서 확인해보시겠어요?
if(is_array($content->option->{'5d96027bdb1ad'})){
echo implode(',', $content->option->{'5d96027bdb1ad'});
}
else{
echo $content->option->{'5d96027bdb1ad'};
}
고맙습니다.