워드프레스에서 한국형 게시판을 운영하고 싶은 경우 케이보드(Koboard)나 망보드와 같은 게시판 플러그인을 사용할 수 있습니다. 케이보드에서 글 작성 에디터를 "워드프레스 내장 에디터 사용"을 선택할 경우 관리자 등 미디어 업로드 권한이 있는 사용자에게 "미디어 추가" 버튼이 표시됩니다. "미디어 추가" 버튼은 코드를 사용하여 제거할 수 있습니다.
워드프레스 케이보드 "미디어 추가" 버튼 제거하기
Kboard 게시판을 추가한 후에 해당 게시판의 기본 설정 탭에서 "글 작성 에디터" 유형을 선택할 수 있습니다.
기본적으로 선택되어 있는 textarea 사용을 선택하면 텍스트만 입력할 수 있는 에디터가 표시됩니다.
워드프레스 내장 에디터 사용을 선택하면 워드프레스 내장 에디터로 내용을 입력할 수 있습니다. 도구모음 전환 아이콘(아래에서 화살표)을 클릭하면 추가적인 도구모음이 표시됩니다.
미디어 파일 업로드 권한이 있는 경우 미디어 추가 버튼과 KBoard 미디어 추가 버튼이 표시됩니다.
KBoard 미디어 추가 버튼을 클릭하여 이미지를 업로드하면 [**/wp-content/uploads/kboard_attached/**] 폴더 아래에 저장됩니다. 가령 다음과 같은 폴더에 저장될 수 있습니다: [**/wp-content/uploads/kboard_attached/1/202112**]
KBoard 미디어 추가 버튼을 제거하고 싶은 경우에는 다음과 같은 코드를 테마의 함수 파일에 추가하면 됩니다.
// 케이보드 미디어 추가 버튼 제거하기
function remove_kboard_add_media_button(){
remove_action( 'media_buttons', 'kboard_editor_button' );
remove_filter( 'mce_buttons', 'kboard_register_media_button' );
remove_filter( 'mce_external_plugins', 'kboard_add_media_button' );
}
add_action( 'kboard_skin_header', 'remove_kboard_add_media_button' );
그러면 KBoard 미디어 추가 버튼은 사라집니다.
만약 미디어 버튼을 모두 제거하고 싶은 경우에는 위의 코드 대신 다음과 같은 코드를 사용할 수 있습니다.
// 워드프레스 미디어 추가 버튼 제거
add_filter( 'wp_editor_settings', function($settings) {
$settings['media_buttons']=FALSE;
return $settings;
});
위의 코드를 사용하면 고전 편집기를 사용하는 경우 고전 편집기 내의 미디어 추가 버튼도 표시되지 않을 것입니다. 그런 경우 특정 페이지에서만 위의 코드가 작동하도록 조건을 추가할 수 있습니다.
위의 코드를 추가하려는 경우 차일드 테마를 만들어서 작업하시기 바랍니다. 그렇지 않으면 테마가 업데이트될 경우에 추가 사항/수정 사항이 사라지게 됩니다. 파일질라와 같은 FTP 클라이언트를 사용하여 FTP에 접속하여 [**/wp-content/themes/테마폴더/functions.php**] 파일의 맨 아래에 추가하시기 바랍니다.
KBoard 미디어 추가 문구 변경하기
Kboard 게시판 관리의 입력필드 설정 탭에서 "사진" 필드가 활성화되어 있는 경우(기본적으로 추가되어 있음), 사진을 추가할 수 있는 필드가 표시됩니다.
아래와 같이 KBoard 미디어 추가라는 문구가 기본적으로 표시됩니다. 보통의 경우 KBoard라는 문구는 없어도 될 것입니다. 그런 경우 다음과 같은 코드를 테마 함수 파일에 추가하여 이 문구를 다른 텍스트로 바꿀 수 있습니다.
// KBoard 미디어 추가 문구 변경하기
add_action('kboard_skin_header', 'my_kboard_skin_header', 10, 1);
function my_kboard_skin_header($builder){
$board = $builder->board;
if($board->id == '1'){ // 실제 게시판 ID로 변경
add_filter('gettext', 'my_text_strings', 999, 3);
}
}
function my_text_strings($translated_text, $text, $domain){
if($domain == 'kboard'){
switch($translated_text){
case 'KBoard 미디어 추가': $translated_text = '미디어 업로드'; break;
}
}
return $translated_text;
}
위에서 게시판 ID는 실제 게시판 ID로 변경하시기 바랍니다.
위의 코드를 추가하면 "미디어 업로드"로 문구가 바뀌게 됩니다.
참고
https://avada.tistory.com/2464
https://avada.tistory.com/2462