kboard 위젯 탭순서 변경문의

kboard 위젯 보드 위젯을 알게 되어 감사합니다. 
메인에 베스트 글을 보여주는 방식으로 사용하고 있는데 탭 지정을 최신 글 인기글로 선택했습니다. 이것을 인기글, 최신 글 순으로 나오게 하고 싶고 인기글 제목을 '베스트 글'이라고 바꾸고 싶습니다. 
혹시 베스트 글로 3개 정도 보여 줄 수 있나요?
또한 주요 공지처럼 그 부분을 작성자 명과 제목을 다른 색상으로 강조하고 싶고 , 배경은 연한 그레이 섹으로 구분 지어 보이게 하고 싶습니다. 
또한 작성자명은 본 베스트 글 스기 게시판은에서는 작성자 이름을 케이 보드 질문 게시판 검색을 통해 이름 앞부분만 일부 만기고 나머지는 * 처리하는 방식을 알게 되었는데 
케이 보드 위젯 출력에도 적용하고 싶습니다. 
질문이 두서없이 장황하여 죄송합니다. 

제작중인 사이트는 http://uprightbody.cafe24.com/   하단 부분에 케이보드 위젯 출력을 숏코드로 처리하였고
베스트 리뷰쓰기는 기본스킨을 복제하여 날짜 표시문제 때문에 조금 수정하여 http://uprightbody.cafe24.com/best-review/ 에 적용하고 있습니다.
이게 프로젝트 의뢰도 가야 한다면 메일이나 답변으로 알려주세요^^

좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
  • 안녕하세요~^^

    KBoard 위젯 플러그인에 표시되는 인기글 문구를

    변경하시려면 아래의 코드를 활용해보시겠어요?

    add_filter('gettext', 'gettext_20210120', 999, 3);
    function gettext_20210120($translated_text, $text, $domain){
    	if($domain == 'kboard-widget'){
    		switch($translated_text){
    			case '인기글': $translated_text = '베스트 글'; break;
    		}
    	}
    	return $translated_text;
    }

    테마의 functions.php 파일에 코드를 추가하거나 Code Snippets 플러그인을 사용해서 코드를 추가할 수 있습니다.

     

    KBoard 위젯에서 글 개수는 KBoard 위젯 설정 중 출력개수로 설정하실 수 있습니다.

     

    배경색과 글자 색상은

    워드프레스 관리자 -> 외모 -> 사용자 정의하기 -> CSS 입력 필드에

    아래의 코드를 추가해서 활용하시면 변경하실 수 있습니다.

    .kboard-default-widget-list table td.kboard-widget-content-title { background: black; }
    .kboard-default-widget-list table td.kboard-widget-content-title a { color: white; }

    레이아웃 변경은 HTML과 CSS 코드에 대해 알면 도움이 됩니다.

     

    작성자 마스킹의 경우 저희 커뮤니티에 검색해보시면 관련 코드들을 확인해보실 수 있습니다.

    아래에 원하는 코드가 있는지 확인해보시겠어요?

    https://www.cosmosfarm.com/search?q=작성자+마스킹

    고맙습니다.

  • 도움 말씀 감사드립니다.
    나머진 이해했고 링크주신 아무리 작성자 일부분 마스킹에 관해서 이해해 보려했지만 프로그램에 문외안이라
    케이보드 위젯 게시판 목록만 작성자 이름의 일부분만 *(별표) 처리하였고 최신글 위젯스킨 리스트에서는 해결을 못하고 있습니다.
    케이보드 위젯 스킨의 list에서
     

    <?php echo $row->member_display?>

    이부분을 어떻게 처리해야 하는지 모르겠습니다.

    테마의 function 에서는 아래 처럼 처리된 상태 입니다.
     

    //kboard 관리자 이름은 모두 나오게
    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;
    	$userdata = get_userdata($user_id);
    	
    	if($board->id == '1' && !$board->isAdmin() && !in_array('administrator', $userdata->roles)){ // 실제 게시판 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;
    }

    다시 한번 도움 요청 드립니다.
    감사합니다.

  • 안녕하세요.

    올려주신 코드 중 아래의 코드를

    <?php echo $row->member_display?>

    아래의 코드로 교체해보시겠어요?

    <?php echo my_kboard_user_display2($row->member_display)?>

     

    테마의 functions.php 파일에는

    아래의 코드도 추가해보세요.

    function my_kboard_user_display2($user_name){
    	if($user_name){
    		$strlen = mb_strlen($user_name, 'utf-8');
    		
    		if($strlen > 3){
    			$showlen = 2;
    		}
    		else{
    			$showlen = 1;
    		}
    		
    		$user_name = mb_substr($user_name, 0, $showlen, 'utf-8') . str_repeat('*', $strlen-$showlen);
    	}
    	
    	return $user_name;
    }

    고맙습니다.

워드프레스 에러 기술지원 서비스 전문가에게 맡기세요