워드프레스는 파일을 첨부할때 코어에서 지정된 알려진 파일타입 이외에는 업로드를 허용하지 않고 있습니다. 그러한 이유로 아래한글( hwp) 파일도 다음과 같은 에러 메세지를 뿌리며 업로드가 되지 않습니다.
(추가 1) 워드프레스 4.7 버전부터는방식이 달라져서 포스트 업데이트하였습니다. (2017년 8월 8일)
(추가 2) 아래의 내용을 플러그인으로 만들어 보았습니다. 워낙 간단해서 애써 플러그인으로 까지 할 필요는 없겠습니다만.
https://github.com/baksimgorkii/hwp-upload
방법1. 테마의 functions.php 파일을 수정(추천)
- 수정할 파일 : ../wp-content/themes/사용테마/functions.php
- child 테마 사용시 : ../wp-content/themes/사용테마-child/functions.php
- 참고 codex : http://codex.wordpress.org/Plugin_API/Filter_Reference/upload_mimes
(1) 테마의 function.php 파일에 아래의 코드를 추가합니다.
function add_custom_mime_types ( $mimes ) { $mimes['hwp'] = 'application/hangul'; return $mimes; } add_filter('upload_mimes', 'add_custom_mime_types');
이 과정을 1개의 파일로 된 간단한 플러그인으로 만들어 링크 합니다. 다운로드
(2) wp-config.php 파일에 아래의 코드를 추가합니다.
define( 'ALLOW_UNFILTERED_UPLOADS', true );
플러그인으로 다운받거나 (1)과정을 직접 추가하거나 wp-confing.php 파일은 수정하여야 합니다.
방법2. 워프의 코어 파일을 수정(비추천)
- 수정할 파일 : /wp-includes/functions.php
wp_get_mime_types() 으로 검색하여 mime-type 설정된 부분에 ‘hwp’ => ‘application/hangul’ 을 추가하면 되지만, 워드프레스 Core 를 건드는 일은 가능하면 비추천합니다.
파일을 수정하고 나면 hwp 파일이 잘 업로드 됩니다.
위 과정을 자세히 알 수 있을까요? 워드프레스를 처음 사용하여 웹사이트 만들다보니
궁금한 점이 한두가지가 아니네요^^
프로젝트 때문에 블로그에 소홀했습니다. 대강의 내용은 포스트에 언급한 대로 입니다. 자세히라 하시면 뭘 의미하시는지요? ^^
컨택트폼에서 한글 파일이 안올라가서 마음 고생이 이만저만이 아니었는데
말씀하신 내용을 해당 플러그인 php 파일 마지막 부분에 넣고
테스트 했더니 잘 보내 지네요.
정말 정말 고맙습니다 ㅠㅠ
한국 정서에 맞는 제대로 된 컨택트폼 하나 있으면 좋겠어요^^;
아무래도 워프가 외산이다보니 ms 제품은 기본으로 잘 되지만 hwp 확장자를 알리 없겠죠. ^^
워프 4.7 버전부터 방식이 달라져서 포스트 내용 업데이트 하였습니다. (2017-08-08)