tion_common_code-snippets.json 죄송합니다. 이 파일 타입 업로드할 권한이 없습니다.
tion_common_code-snippets.json 죄송합니다. 이 파일 타입 업로드할 권한이 없습니다.
워드프레스 업로드 제한 에러 메시지를 가끔 보게됩니다.
허용되지 않은 파일을 업로드 할 때 나오는 메시지인데요.
이번에 json 파일을 업로드 해서 시스템을 빠르게 구축할때 도움이 되도록 파일을 업로드하려하는데 제한이더군요.
이를 해결하기 위해서 몇가지 방법이 존재합니다.
웹검색을 해보면 한국 블로거들은 대부분 플러그인을 사용하라고 글을 작성해놓았더군요.
외국 블로거들도 대부분 플러그인 이야기를 꺼내지만 간혹 프로그래머들이 있는지 add_filter를 이용한 function.php 파일에 업로드 하는방법을 소개했더군요. 그나마 외국은 이렇게 개발자들이 많아서 조금이라도 더 구체적인 방법을 찾을 수 있어서 좋습니다. 그렇다고 한국 블로거님들이 잘못되었다는건 아니고요. 한국에서도 많은 개발자들 이러한 직접 코딩을 쉽게 할 수 있도록 많이 알려주셨으면 좋겠다 싶어서 잠깐 적어보았습니다.
add_filter 를 이용하여 upload mimes type을 교체 할수도 있습니다.
물론 unset 명령어로 제거할수도 있고 추가할 수도 있습니다.
제가 플러그인을 자꾸 설치하는것에 대해서 별로 안좋아하는 이유는 보안의 이유입니다.
플러그인이 많으면 많을수록 보안에 취약해 질 수 밖에 없습니다.
플러그인이 1개 완벽한것을 설치했다면 그 플러그인 이외에 플러그인이 없어서 보안상 더 유리하다는 이야기입니다.
여러개면 개발자가 여러명이 될테고 헛점이 더 많아진다는 그러한 원리입니다.
결국 플러그인은 최대한 줄여야하는데 이러한 사소한 upload 마임 설정을 변경하기 위해서까지 플러그인을 사용하자하니 제가 직접 플러그인을 만들어서 배포를 한들 다른이들도 저처럼 또 똑같이 플러그인에 대한 반감이 있을 수 있습니다.
그래서 snippets 플러그인 하나만 설치하고 나머지는 필터와 액션을 이용해서 대부분을 해결하고 있는중입니다.
오늘 내용도 snippets 플러그인 하나만 설치해놓고 다른 기능을 변경하고 추가하는 내용입니다.
보시면 json 파일이 업로드가 이미 된 상태라 올려놓은 파일을 확인 할 수 있습니다.
파일유형을 자세히 보세요.
application/json 이라고 나와있죠?
이 항목이 가장 중요합니다.
add_filter 명령어로 mime 타입을 넣을때 json 파일을 text 항목으로 넣으라고 인터넷검색에 나온거보고 아무리 해도 안되어서 계속 검색검색 하다 댓글하나 찾았는데 거기에 파일형식을 application/json 바꾸면 된다는것을 확인하고 업로드까지 되는거 확인했습니다.
이렇게 인터넷도 버전이 달라지거나 시간이 흐르거나 혹은 사용자의 실수로 잘못된 정보를 제공할수도 있습니다.
그런 정보를 진짜인마냥 전달하고 글을 작성하고 복사하고 결국 잘못된 정보가 사람들 사이에 퍼지게되는거죠.
바로 잡기 위해서 이 글을 작성하는겁니다.
플러그인은 아래 링크를 클릭해서 다운받으시면되고요.
또 잘 모르는분들이 그럴겁니다.
결국 플러그인 다운받는거 아니냐!! 라고요 ㅎㅎㅎ
무식한 소리하지마시고요. (왠만하면 제가 이런말 안하지만 진짜 자신이 무식한거 생각안하고 자신의 생각대로 상대를 생각하는사람들이 많더군요.) 자신은 그기능의 원리도 모르면서 그냥 복사 붙여넣기해서 다른사람 피해를 주는 사람들이 생각보다 인터넷 상에 많다는 사실을 잊지마세요. 그런 사람들 가운데 내가 없길 바랄뿐입니다.
오늘 이 내용은 상당히 중요한 내용이며 고수중에서도 초고수들만 이용하는 방법입니다.
초보분들은 다양한 플러그인을 많이 설치하여 보안상 취약해지고 서버에 무리를 많이 줍니다.
그러니 이 방법을 잘 활용하셔서 도움되셨으면하네요.
스니펫 플러그인은 다른 플러그인과 다르게 add_filter와 add_action 명령어를 직접 만들어서 웹상에서 등록 변경 할 수 있도록 해주는 CMS 같은 역할의 플러그인입니다.
다른 플러그인들은 각 기긍별로 딱 정해진 일만 하지만 스니펫 플러그인은 내가 원하는 코드를 직접 만들고 변형, 변조 할 수 있죠. 그렇기 때문에 다른플러그인은 설치 안하더라도 이 플러그인 하나만 설치하면 모든 플러그인 기능을 직접 만들 수 있다고 해도 과언이 아닙니다.
우선 [ Code Snippets ] 라는 코드조각 플러그인을 설치해야합니다.
그리고 Add New 버튼을 클릭하여 아래처럼 해주세요.
코드는 제가 아랫쪽에 코드만 따로 넣어두었습니다.
[coupang]
my_upload_mimies 함수를 필터를 이용하여 등록해주는겁니다.
어렵다 생각하지마시고 내가 원하는 파일확장자만 수정해서 사용하면됩니다.
폰트파일을 업로드 하고 싶다면 마임항목에 [ fft ] 그리고 파일형식항목에 [ font/ttf ] 이렇게 입력하면됩니다.
function my_upload_mimes( $types ) {
// New allowed mime types.
$types['svg'] = 'image/svg+xml';
$types['svgz'] = 'image/svg+xml';
$types['doc'] = 'application/msword';
// Fonts
$mimes['ttf'] = 'font/ttf';
$mimes['woff'] = 'font/woff';
$mimes['woff2'] = 'font/woff2';
//$types['json'] = 'application/json';
// New allowed mime types. another method
$types = array_merge( $types, array( 'json' => 'application/json' ) );
// Optional. Remove a mime type.
unset( $types['exe'] );
return $types;
}
add_filter( 'upload_mimes', 'my_upload_mimes' );
[coupangend]
그리고 아래 Save 항목과 실행 항목을 눌러주면 바로 적용됩니다.
오른쪽에 Priority 는 여러개의 코드조각이 있을때 우선순위정도이니 지금은 중요하지 않습니다.
만약 이 항목이 어렵다 느끼시면 그냥 아래처럼 따라하세요
1. 코드조각 (Code Snippets) 플러그인을 다운받는다
2. import json 파일을 다운받는다.
3. 다운받은 json 파일을 import 한다
코드를 사용하면 됩니다.
그리고 이제 미디어에서 파일을 업로드하면 내가 원하는 마임타입의 파일이 업로드 됩니다.
끝!
잘 사용하세요
설마 노파심에 글을 추가합니다.
혹시 json 파일이 아래처럼 스트림으로 나온다고해서 다운 못받는분 있으신거 아니시죠?
이렇게 나오면 오른쪽 버튼 눌러서 다른이름으로 저장하기 누르시면됩니다.
잘 하겠지만…혹시나 싶어서 자세히 적었습니다.
흐흐흐흐
오늘도 여러분들은 초고수 영역의 엄청난 고급 정보를 거저 얻어가셨습니다.
고마움을 아시는 분들은 가끔 커피쿠폰도 보내주시던데…
ㅎㅎ 이렇게 말씀드려도 아무도 안보낼꺼 알고 있습니다.
우리나라도 언젠가는 웹 선진국이 되겠죠.
목차