1. 비밀글로 설정 할 때, 비밀번호 입력 안 받기.
2. 해당 게시글을 작성자, 관리자가 조회 할 때에는 비밀번호를 입력 하지않고 게시글을 볼 수 있게 설정
3. 해당 게시글 제목 앞에 '[비공개]'라는 텍스트 넣기
이렇게 세가지 가능하게 할 방법이 없나요???
* 썸네일 스킨을 사용 중입니다.
안녕하세요~^^
KBoard 플러그인에서 비밀글은 기본적으로 본인과 관리자는
비밀번호를 입력하지 않고 볼 수 있습니다.
비밀글 작성 시 비밀글 체크박스를 체크하지 않고 자동으로 비밀번호를 입력되게 하시려면
워드프레스 관리자 -> 외모 -> 테마 편집기 페이지에서 functions.php 파일 하단에
아래의 코드를 추가해보세요.
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){
$meta_key = isset($field['meta_key'])&&$field['meta_key'] ? $field['meta_key']: '';
$field_name = isset($field['field_name'])&&$field['field_name'] ? $field['field_name']: '';
$fields = $board->fields();
$boardBuilder = new KBoardBuilder($board->id);
if($field['meta_key'] == 'option' && $board->id == '1'){
?>
<div class="kboard-attr-row <?php echo esc_attr($field['class'])?>">
<label class="attr-name" for="<?php echo esc_attr($meta_key)?>"><span class="field-name"><?php echo esc_html($field_name)?></span></label>
<div class="attr-value">
<?php if($fields->isUseFields($field['secret_permission'], $field['secret'])):?>
<label class="attr-value-option"><input type="checkbox" name="secret" value="true" onchange="kboard_toggle_password_field(this)"<?php if($content->secret):?> checked<?php endif?>> <?php echo __('Secret', 'kboard')?></label>
<?php endif?>
<?php if($fields->isUseFields($field['notice_permission'], $field['notice'])):?>
<label class="attr-value-option"><input type="checkbox" name="notice" value="true"<?php if($content->notice):?> checked<?php endif?>> <?php echo __('Notice', 'kboard')?></label>
<?php endif?>
<?php do_action('kboard_skin_editor_option', $content, $board, $boardBuilder)?>
<?php if(isset($field['description']) && $field['description']):?><div class="description"><?php echo esc_html($field['description'])?></div><?php endif?>
</div>
</div>
<?php if(!$board->viewUsernameField()):?>
<div style="overflow:hidden;width:0;height:0;">
<input style="width:0;height:0;background:transparent;color:transparent;border:none;" type="text" name="fake-autofill-fields">
<input style="width:0;height:0;background:transparent;color:transparent;border:none;" type="password" name="fake-autofill-fields">
</div>
<!-- 비밀글 비밀번호 필드 시작 -->
<input type="hidden" id="kboard-input-password" name="password" value="<?php echo uniqid()?>">
<!-- 비밀글 비밀번호 필드 끝 -->
<?php endif?>
<?php
$field_html = ob_get_clean();
}
return $field_html;
}
위의 코드에서 $board->id == '1' 부분은 실제 게시판 id로 적용해주세요.
비밀글로 작성 시 게시글 제목 앞에 해당 문구를 표시하고 싶으신 건지요?
스킨 파일을 수정해보시겠어요?
FTP로 접속해서 /wp-content/plugins/kboard/skin/사용중인스킨/list.php 파일에
아래의 코드를 모두 찾아서
<?php echo $content->title?>
아래의 코드로 모두 교체해보시겠어요?
<?php if($content->secret):?>[비공개]<?php endif?><?php echo $content->title?>
고맙습니다.