이동한 게시글 링크 클릭시 나오는 경고창의 문구를 변경하고 싶습니다.

안녕하세요 평소에 케이보드를 이용해 커뮤니티 사이트를 이용하는 한 유저입니다.

최근에 일정수의 추천수와 조횟수를 기록하면 게시물이 베스트 게시물 게시판으로 이동되는 기능을 구현했습니다.

문제는 이 게시물의 원래 링크를 클릭하면

"이 게시글은 이동되었습니다."

라 문구가 뜨는데 이것을 

"이 게시글은 베스트/마스터 게시판으로 이동되었습니다."

라고 수정을 하려고 했습니다.

 

그래서 kboard-ko_KR.po의 내용을 아래와 같이 변경하였는데 반영이 안되었습니다.

```

#: class/KBoardBuilder.class.php:400 class/KBoardBuilder.class.php:584
#: class/KBoardBuilder.class.php:762 class/KBoardBuilder.class.php:852
#: class/KBoardBuilder.class.php:985
msgid "This post has been moved."
msgstr "이 게시글은 베스트/마스터 게시판으로 이동되었습니다."

```

혹시 문구를 변경하는 방법중 다른 방법은 없을까요?

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

    버전이 업데이트되면서 허가되지 않은 다른 게시판에서 게시글을 불러오는 것을 차단하는 코드가 추가되었습니다.

    게시판마다 권한 설정이 다른데 게시글을 그냥 불러올 수 있다면 문제가 발생될 수 있기 때문입니다.

    아래 코드를 테마의 functions.php 파일에 추가를 해주시겠어요?

    add_filter('kboard_allowed_board_id', 'kboard_allowed_board_id_20200811', 10, 2);
    function kboard_allowed_board_id_20200811($allowed_board_id, $board_id){
    	if($allowed_board_id == '3'){ // 베스트 게시판
    		$allowed_board_id = array('3', '1', '2'); // 자신과 다른 게시판의 ID값을 입력
    	}
    	else if($allowed_board_id == '4'){ // 베스트 오브 베스트 게시판
    		$allowed_board_id = array('4', '1', '2'); // 자신과 다른 게시판의 ID값을 입력
    	}
    	return $allowed_board_id;
    }

    워드프레스 관리자 -> 테마 디자인 -> 테마 편집기 메뉴에서 functions.php 파일을 편집할 수 있습니다.

     

    말씀하신 것처럼 해당 안내창 문구를 변경하는 건

    아래의 코드를 적용해보시겠어요?

    add_action('kboard_skin_header', 'kboard_skin_header_20200811', 10, 1);
    function kboard_skin_header_20200811($builder){
    	$board = $builder->board;
    	if($board->id == '1'){ // 실제 게시판 id로 적용해주세요.
    		add_filter('gettext', 'gettext_20200811', 10, 3);
    	}
    }
    
    function gettext_20200811($translated_text, $text, $domain){
    	if($domain == 'kboard' && $translated_text == '이 게시글은 이동되었습니다.'){
    		$translated_text = '이 게시글은 베스트/마스터 게시판으로 이동되었습니다.';
    	}
    	return $translated_text;
    }

    위의 코드에서 $board->id == '1' 부분은 실제 게시판 id로 적용해주세요.

    고맙습니다.

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