add_action('kboard_document_insert', 'my_kboard_document_insert', 10, 4);
function my_kboard_document_insert($content_uid, $board_id, $content, $board){
if($board_id == '35'){ // 실제 게시판 id로 적용해주세요.
$mail->title = $yhlee_title .apply_filters('kboard_latest_alerts_subject', '['.__('KBoard new document', 'kboard').'] '.$board->board_name.' - '.$content->title, $content);
}
위의 예처럼 특정 게시판의 메일 제목을 다르게 보내는것 처럼 , 게시글 제목의 내용도 변경 할 수 있나요?
list.php 수정 말고 function에서 수정하는 방법이 있는지 궁금합니다.
안녕하세요.
kboard_content_value 필터는 게시글 등록 시에도 동작하기 때문에
게시글 본문 페이지나 목록 페이지에서만 적용되게 해주셔야 할 듯합니다.
추가하신 코드를 아래의 코드로 교체해서 확인해보시겠어요?
add_filter('kboard_content_value', 'my_kboard_content_value', 10, 3);
function my_kboard_content_value($value, $name, $content){
$board = $content->getBoard();
if($name == 'title' && kboard_mod() != 'editor'){
if($board->id == '38' && $content->category1){
$value = "[{$content->category1}] {$value}";
}
}
return $value;
}
고맙습니다.
추가 질문이 있습니다.
카테고리 설정을 해놓고 글을 쓰면 제목에
[카테고리명][카테고리명]제목
두번 나옵니다.
$value = "[{$content->category1}] {$value}";
{$value} 에서 [고려아카데미]ㅇㄹㅇㄹㅇㄹ 불러 오고 그 앞에 [고려아케데미] 가 또 불러와서 합쳐지는데.
[{$content->category1}] 이 부분을 빼버리면 그냥 "ㅇㄹㅇㄹㅇㄹㅇㄹㅇㄹ" 만 나옵니다.
사용한 코드는 아래와 같습니다. 다른 코드는 없습니다.
add_filter('kboard_content_value', 'my_kboard_content_value', 10, 3);
function my_kboard_content_value($value, $name, $content){
$board = $content->getBoard();
if($name == 'title'){
if($board->id == '38' && $content->category1){
$value = "[{$content->category1}] {$value}";
}
}
return $value;
}
list.php는 원본 입니다. (변경된 점 없음)
<div id="kboard-default-list">
<!-- 게시판 정보 시작 -->
<div class="kboard-list-header">
<?php if(!$board->isPrivate()):?>
<div class="kboard-total-count">
<?php echo __('Total', 'kboard')?> <?php echo number_format($board->getListTotal())?>
</div>
<?php endif?>
<div class="kboard-sort">
<form id="kboard-sort-form-<?php echo $board->id?>" method="get" action="<?php echo $url->toString()?>">
<?php echo $url->set('pageid', '1')->set('category1', '')->set('category2', '')->set('target', '')->set('keyword', '')->set('mod', 'list')->set('kboard_list_sort_remember', $board->id)->toInput()?>
<select name="kboard_list_sort" onchange="jQuery('#kboard-sort-form-<?php echo $board->id?>').submit();">
<option value="newest"<?php if($list->getSorting() == 'newest'):?> selected<?php endif?>><?php echo __('Newest', 'kboard')?></option>
<option value="best"<?php if($list->getSorting() == 'best'):?> selected<?php endif?>><?php echo __('Best', 'kboard')?></option>
<option value="viewed"<?php if($list->getSorting() == 'viewed'):?> selected<?php endif?>><?php echo __('Viewed', 'kboard')?></option>
<option value="updated"<?php if($list->getSorting() == 'updated'):?> selected<?php endif?>><?php echo __('Updated', 'kboard')?></option>
</select>
</form>
</div>
</div>
<!-- 게시판 정보 끝 -->
<!-- 카테고리 시작 -->
<?php
if($board->use_category == 'yes'){
if($board->isTreeCategoryActive()){
$category_type = 'tree-select';
}
else{
$category_type = 'default';
}
$category_type = apply_filters('kboard_skin_category_type', $category_type, $board, $boardBuilder);
echo $skin->load($board->skin, "list-category-{$category_type}.php", $vars);
}
?>
<!-- 카테고리 끝 -->
<!-- 리스트 시작 -->
<div class="kboard-list">
<table>
<thead>
<tr>
<td class="kboard-list-uid"><?php echo __('Number', 'kboard')?></td>
<td class="kboard-list-title"><?php echo __('Title', 'kboard')?></td>
<td class="kboard-list-user"><?php echo __('Author', 'kboard')?></td>
<td class="kboard-list-date"><?php echo __('Date', 'kboard')?></td>
<td class="kboard-list-vote"><?php echo __('Votes', 'kboard')?></td>
<td class="kboard-list-view"><?php echo __('Views', 'kboard')?></td>
</tr>
</thead>
<tbody>
<?php while($content = $list->hasNextNotice()):?>
<tr class="kboard-list-notice<?php if($content->uid == kboard_uid()):?> kboard-list-selected<?php endif?>">
<td class="kboard-list-uid"><?php echo __('Notice', 'kboard')?></td>
<td class="kboard-list-title">
<a href="<?php echo $url->getDocumentURLWithUID($content->uid)?>">
<div class="kboard-default-cut-strings">
<?php if($content->isNew()):?><span class="kboard-default-new-notify">New</span><?php endif?>
<?php if($content->secret):?><img src="<?php echo $skin_path?>/images/icon-lock.png" alt="<?php echo __('Secret', 'kboard')?>"><?php endif?>
<?php echo $content->title?>
<span class="kboard-comments-count"><?php echo $content->getCommentsCount()?></span>
</div>
</a>
<div class="kboard-mobile-contents">
<span class="contents-item kboard-user"><?php echo apply_filters('kboard_user_display', $content->member_display, $content->member_uid, $content->member_display, 'kboard', $boardBuilder)?></span>
<span class="contents-separator kboard-date">|</span>
<span class="contents-item kboard-date"><?php echo $content->getDate()?></span>
<span class="contents-separator kboard-vote">|</span>
<span class="contents-item kboard-vote"><?php echo __('Votes', 'kboard')?> <?php echo $content->vote?></span>
<span class="contents-separator kboard-view">|</span>
<span class="contents-item kboard-view"><?php echo __('Views', 'kboard')?> <?php echo $content->view?></span>
</div>
</td>
<td class="kboard-list-user"><?php echo apply_filters('kboard_user_display', $content->member_display, $content->member_uid, $content->member_display, 'kboard', $boardBuilder)?></td>
<td class="kboard-list-date"><?php echo $content->getDate()?></td>
<td class="kboard-list-vote"><?php echo $content->vote?></td>
<td class="kboard-list-view"><?php echo $content->view?></td>
</tr>
<?php endwhile?>
<?php while($content = $list->hasNext()):?>
<tr class="<?php if($content->uid == kboard_uid()):?>kboard-list-selected<?php endif?>">
<td class="kboard-list-uid"><?php echo $list->index()?></td>
<td class="kboard-list-title">
<a href="<?php echo $url->getDocumentURLWithUID($content->uid)?>">
<div class="kboard-default-cut-strings">
<?php if($content->isNew()):?><span class="kboard-default-new-notify">New</span><?php endif?>
<?php if($content->secret):?><img src="<?php echo $skin_path?>/images/icon-lock.png" alt="<?php echo __('Secret', 'kboard')?>"><?php endif?>
<?php echo $content->title?>
<span class="kboard-comments-count"><?php echo $content->getCommentsCount()?></span>
</div>
</a>
<div class="kboard-mobile-contents">
<span class="contents-item kboard-user"><?php echo apply_filters('kboard_user_display', $content->member_display, $content->member_uid, $content->member_display, 'kboard', $boardBuilder)?></span>
<span class="contents-separator kboard-date">|</span>
<span class="contents-item kboard-date"><?php echo $content->getDate()?></span>
<span class="contents-separator kboard-vote">|</span>
<span class="contents-item kboard-vote"><?php echo __('Votes', 'kboard')?> <?php echo $content->vote?></span>
<span class="contents-separator kboard-view">|</span>
<span class="contents-item kboard-view"><?php echo __('Views', 'kboard')?> <?php echo $content->view?></span>
</div>
</td>
<td class="kboard-list-user"><?php echo apply_filters('kboard_user_display', $content->member_display, $content->member_uid, $content->member_display, 'kboard', $boardBuilder)?></td>
<td class="kboard-list-date"><?php echo $content->getDate()?></td>
<td class="kboard-list-vote"><?php echo $content->vote?></td>
<td class="kboard-list-view"><?php echo $content->view?></td>
</tr>
<?php $boardBuilder->builderReply($content->uid)?>
<?php endwhile?>
</tbody>
</table>
</div>
<!-- 리스트 끝 -->
<!-- 페이징 시작 -->
<div class="kboard-pagination">
<ul class="kboard-pagination-pages">
<?php echo kboard_pagination($list->page, $list->total, $list->rpp)?>
</ul>
</div>
<!-- 페이징 끝 -->
<!-- 검색폼 시작 -->
<div class="kboard-search">
<form id="kboard-search-form-<?php echo $board->id?>" method="get" action="<?php echo $url->toString()?>">
<?php echo $url->set('pageid', '1')->set('target', '')->set('keyword', '')->set('mod', 'list')->toInput()?>
<select name="target">
<option value=""><?php echo __('All', 'kboard')?></option>
<option value="title"<?php if(kboard_target() == 'title'):?> selected<?php endif?>><?php echo __('Title', 'kboard')?></option>
<option value="content"<?php if(kboard_target() == 'content'):?> selected<?php endif?>><?php echo __('Content', 'kboard')?></option>
<option value="member_display"<?php if(kboard_target() == 'member_display'):?> selected<?php endif?>><?php echo __('Author', 'kboard')?></option>
</select>
<input type="text" name="keyword" value="<?php echo esc_attr(kboard_keyword())?>">
<button type="submit" class="kboard-default-button-small"><?php echo __('Search', 'kboard')?></button>
</form>
</div>
<!-- 검색폼 끝 -->
<?php if($board->isWriter()):?>
<!-- 버튼 시작 -->
<div class="kboard-control">
<a href="<?php echo $url->getContentEditor()?>" class="kboard-default-button-small"><?php echo __('New', 'kboard')?></a>
</div>
<!-- 버튼 끝 -->
<?php endif?>
<?php if($board->contribution()):?>
<div class="kboard-default-poweredby">
<a href="https://www.cosmosfarm.com/products/kboard" onclick="window.open(this.href);return false;" title="<?php echo __('KBoard is the best community software available for WordPress', 'kboard')?>">Powered by KBoard</a>
</div>
<?php endif?>
</div>
답변으로 잘 고쳐쓰고 있습니다.
감사합니다.
안녕하세요.
KBoard 플러그인 게시글 목록 페이지에서
게시글 제목을 편집하고 싶으신 건지요?
최신 버전의 KBoard 플러그인을 사용 중이시라면 kboard_content_value 필터를 활용하시면
게시글 제목을 편집하실 수 있습니다.
워드프레스 관리자 -> 외모 -> 테마 편집기 페이지에서 functions.php 파일 하단에
아래의 코드를 추가해보시겠어요?
add_filter('kboard_content_value', 'my_kboard_content_value', 10, 3);
function my_kboard_content_value($value, $name, $content){
$board = $content->getBoard();
if($name == 'title'){
if($board->id == '1' && $content->category1){
$value = "[{$content->category1}] {$value}";
}
if($board->id == '2' && $content->option->meta_key){
$value = "[{$content->option->meta_key}] {$value}";
}
}
return $value;
}
위의 코드를 적용하시면
1번 게시판 게시글 목록 페이지에서
카테고리1이 있는 게시글은 [카테고리1] 게시글제목 이런 식으로 표시됩니다.
2번 게시판 게시글 목록 페이지에서는
필드 메타키가 meta_key인 필드의 값이 있다면
[필드값] 게시글제목 이런 식으로 표시됩니다.
위의 코드에서 $board->id 부분은 실제 게시판 id를 적용해주세요.
KBoard 플러그인의 업데이트 방법은 아래의 링크를 참고해보세요.
고맙습니다.
예를 들면
1번 게시판은 카테고리 이름이 제목 부분에 나오고
2번은 확장 필드의 체크박스 이름이 나오게 하고 싶은경우를 말하는겁니다.
게시판 ID = 1 제목의 형식은 [프로토] 라는 카테고리 이름과 [완료]라는 셀렉트 박스 이름이 같이
게시판 ID = 2 제목의 형식은 [완료] 라는 셀렉트 박스 이름만 나오게
안녕하세요~^^
질문이 이해가 잘 가지 않습니다.
KBoard 플러그인에서 게시글 작성 시 이메일을 전송하고 싶으신 건지요?
게시판별로 실제 게시글 제목과 내용을 비교해서
메일에는 어떤 식으로 보내지게 하고 싶으신 건지 예를 들어주시면
도움 드릴 방법을 찾아보겠습니다.
고맙습니다.