첨부파일 파일명을 원본 그대로 다운로드 되도록 하고 싶습니다.

안녕하세요. 

첨부파일 파일명을 원본 그대로 다운로드 되도록 올리고 싶습니다. 

그런데, 파일명에 공백과 가로가 ( )  있으면 모두 - 로 대체가 됩니다. 

예) 원본 : J Path (n2 Univ).ens   변경 : J-Path-n2-Univ.ens

해결방안을 여쭤봅니다. 확인을 부탁드립니다. 

수고하세요.

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

    KBoard 플러그인에서 파일 업로드 시 보안상의 문제로

    워드프레스 sanitize_file_name 함수를 활용하여

    파일명을 안전한 문자로 처리하고 있습니다.

     

    첨부 파일명에 특수문자가 포함되어 있다면 원치 않는 결과를 얻을 수도 있기 때문에

    코드를 수정하실 땐 각별한 주의가 필요합니다.

     

    코드를 수정해서 업로드한 파일명으로 표시되게 하시려면

    아래 관련 링크를 참고해보시겠어요?

    https://www.cosmosfarm.com/threads/document/21315

    고맙습니다.

  • 안녕하세요. 답변 감사합니다. 

    보내주신 게시글을 따라 그대로 하였으나 변동사항이 없습니다. 

    수정과 동일한 내용은 딱1개가 있어 다음과 같이 변경을 하였습니다.

    https://imgur.com/jfY1G2y

    다음 내용은 아닌걸로 확인되어 그대로 놓아두었습니다. 

    https://imgur.com/0c0eYuy

    스킨 파일의 document 파일에도 적용을 해보았으나, 제목 처음과 뒤에 [ ] 만 생성이 됩니다. 

    위 2번째 이미지의 코드도 변경을 해보았으나, 모든 글자가 지워지고 맨 앞글자 한개만 남게 되었습니다. 

    다시 재 확인을 부탁드립니다. 

     

     

     

     

     

     

     

  • KBFileHandler 클래스 파일에서 singleUpload 메소드와 multipleUpload 메소드 쪽 모두 수정해주셔야 하니다.

    FTP로 접속해서 /wp-content/plugins/kboard/class/KBFileHandler.class.php 파일에

    아래의 코드를 찾아서

    'original_name' => sanitize_file_name($file['name'][$key]),

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

    'original_name' => $file['name'][$key],

     

    아래의 코드를 찾아서

    'original_name' => sanitize_file_name($file['name']),

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

    'original_name' => $file['name'],

    고맙습니다.

  • 업로드 파일명이 요청한대로 확인되어 정상처리가 된것으로 보았으나,

    다운로드를 받아보니 파일명이 문의 전과 동일합니다. 

    캡쳐한 내용을 첨부하오니 확인을 부탁드립니다. 

    https://imgur.com/ByNshUr

     

     

  • KBoard 플러그인에서 첨부파일 다운로드 시 파일명에

    공백이 있을 경우 하이픈(-)으로 교체하고 있습니다.

    공백을 하이픈으로 교체하지 않고 그대로 다운로드하게 하시려면

    FTP로 접속해서 /wp-content/plugins/kboard/class/KBController.class.php 파일에

    아래의 코드를 찾아서 주석 처리 또는 삭제해보시겠어요?

    $file_info->file_name = str_replace(' ' ,'-', $file_info->file_name);

    고맙습니다.

  • 감사합니다. 요청한대로 진행되었습니다. 

    수고하세요~~

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