메뉴 옆에 new 표시

몇달전에 메뉴 옆에 관리자만 볼수있는 new표시를 띄울 수 있는지에 대해 질문하여 스레드님의 답변을 받았습니다

https://www.cosmosfarm.com/threads/document/44609?page=3

 

몇일전 홈페이지를 확장하면서 게시판 개수를 늘리게 되었는데요.....

혹시 1,2번 게시판이 있는 메뉴 옆에는 new표시를 관리자만 볼 수 있게끔 설정하고 나머지 게시판들이 있는 메뉴 옆에는 회원들도 new표시를 보게 만들 수 있을까요??

워드프레스 에러 기술지원 서비스 전문가에게 맡기세요
좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
  • 안녕하세요~^^

    올려주신 링크에서 여러 개의 게시판을 적용하시려면

    해당 링크의 코드 중

    아래의 코드를 찾아서

    `board_id`='$board_id'

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

    `board_id` IN('$board_id', '2')

    위의 코드에서 '2' 부분은 실제 게시판 id로 적용해보세요.

     

    아래의 코드처럼 게시판을 더 추가해서 사용하실 수도 있습니다.

    `board_id` IN('$board_id', '2', '3', '4', '5')

    고맙습니다.

  • 매번 친절한 답변주셔서 너무 감사합니다

    그런데 알려주신대로 적용해봤더니 원하던 방식이 아니라서요........제 설명이 부족했던 것 같아서 다시 한번 문의드리는점 죄송합니다ㅠㅠ

     

    현재 홈페이지에서 케이보드 게시판 1번과 2번이 적용되어 있는 두개의 페이지에는 게시판에 새로운 글이 등록되면 메인 메뉴에 관리자만 볼 수 있는 new 표시가 떠있습니다.

    예전에 알려주신 아래의 코드를 function.php에 적용한 뒤, 

    add_shortcode('kboard_new_text', 'kboard_new_text');
    function kboard_new_text($args=array()){
    	global $wpdb;
    	
    	$board_id = 0;
    	if(isset($args['id']) && $args['id']){
    		$board_id = intval($args['id']);
    	}
    	
    	if($board_id){
    		$board = new KBoard($board_id);
    		if($board->isAdmin()){
    			$notify_time = kboard_new_document_notify_time();
    			if($notify_time != '1'){
    				$timestamp = current_time('timestamp') - $notify_time;
    				$date = date('YmdHis', $timestamp);
    				
    				$count = $wpdb->get_var("SELECT COUNT(*) FROM `{$wpdb->prefix}kboard_board_content` WHERE `board_id`='$board_id' AND `date`>='$date' AND (`status`='' OR `status` IS NULL OR `status`='pending_approval')");
    				if($count){
    					return '<span class="kboard-new-text">NEW</span>';
    				}
    			}
    		}
    	}
    	
    	return '';
    }

    메뉴에 아래의 숏코드를 적용했었습니다

    [kboard_new_text id="1"]

     

    몇달동안 관리자만 볼수있는 new 표시 기능에 만족하며 홈페이지를 운영하였는데 이번에 홈페이지가 확장되면서 케이보드 게시판이 담겨있는 페이지들이 늘어났습니다

    게시판 1번과 2번에는 지금 적용된것 그대로 new 표시를 관리자만 볼 수 있게 하고, 새로 생긴 케이보드 게시판 링크가 연결되어있는 메인 메뉴 옆에는 회원들도 볼 수있는 new 표시를 띄우고 싶습니다

    $board->isAdmin() 코드를 1번/2번 게시판 메뉴에만 적용하고 다른 게시판들에는 적용시키지 않는 방법이 있을까요??

     

    https://imgur.com/a/oLI3del

    1번 / 2번은 관리자만 new 표시를 볼 수 있음

    나머지 게시판에서는 모든 회원들이 new 표시를 볼 수 있음

    이런식으로 적용할수있는 방법이 없는지 궁금합니다

  • 안녕하세요.

    일반 사용자에게도 표시하는 숏코드를 별도로 추가하시거나

    숏코드 함수 파라미터 배열 쪽에 관리자인지 체크하는 값을 추가해주셔야 할 듯합니다.

    워드프레스 숏코드(Shortcode)에 대한 자세한 내용은

    아래의 링크를 참고해보세요.

    https://codex.wordpress.org/Shortcode_API

    고맙습니다.

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