Kboard를 사용하다보면 상담게시판에 작성자 이름을 별 *표시 해야되는 경우가 있습니다.
이럴때 작성자 성만 보이고 나머지 이름은 별표시 하는 방법을 공유합니다.
KBoard 플러그인에서 작성자명은 워드프레스의 공개적으로 표시할 이름을 활용하고 있습니다.
워드프레스 [관리자] > [사용자] > [나의 프로필] 페이지에서 공개적으로 표시할 이름을 게시판 목록이나 본문 페이지에 표시하고 있습니다.
워드프레스 [관리자] > [외모] > [테마 편집기] 페이지에서 functions.php 파일 하단에 아래의 코드를 추가합니다.
add_filter('kboard_user_display', 'my_kboard_user_display', 10, 5);
function my_kboard_user_display($user_display, $user_id, $user_name, $plugins, $boardBuilder){
$board = $boardBuilder->board;
if($board->id == '1' && !$board->isAdmin()){ // 실제 게시판 id로 적용해주세요.
$strlen = mb_strlen($user_name, 'utf-8');
if($strlen > 3){
$showlen = 2;
}
else{
$showlen = 1;
}
$user_display = mb_substr($user_name, 0, $showlen, 'utf-8') . str_repeat('ㅇ', $strlen-$showlen);
}
return $user_display;
}
$board->id == ‘1’ 부분은 실제 게시판 id로 변경하고
str_repeat(‘ㅇ’, $strlen-$showlen) 부분을 str_repeat(‘*’, $strlen-$showlen) 으로 변경하면 *표시를 할 수 있습니다.
작성자명을 관리자로 로그인 했을때 전부 표시하려면 아래의 코드를 넣으면 됩니다.
add_filter('kboard_user_display', 'my_kboard_user_display', 10, 5);
function my_kboard_user_display($user_display, $user_id, $user_name, $plugin, $builder){
if(!$builder->board->isAdmin()){
$strlen = mb_strlen($user_display, 'utf-8');
if($strlen > 3){
$showlen = 2;
}
else{
$showlen = 1;
}
$user_display = mb_substr($user_display, 0, $showlen, 'utf-8') . str_repeat('*', $strlen-$showlen);
}
return $user_display;
}
작성자명 표시를 변경할때 활용해보세요~!