워드프레스 Quform 플러그인 파일 업로드 필드의 데이터 타입 및 배열 키값

워드프레스 컨택트 폼 플러그인인 Quform으로 만든 문의 양식을 통해 제출한 데이터를 Kboard 게시판에 등록하는 연동 소스를 "워드프레스 Quform과 케이보드 게시판 연동 소스 코드" 글에서 공개한 적이 있습니다.

상기 글에서는 기본적인 소스가 소개되어 있습니다. 큐폼 문의폼에 파일 업로드 필드를 추가하고, 사용자가 파일을 업로드하면 케이보드 게시글 내에서도 파일을 다운로드받을 수 있도록 소스를 수정해야 하는 경우 Quform의 File Upload 필드의 데이터 타입을 확인하여 코드를 추가해야 합니다.

Quform의 파일 업로드(File Upload) 필드의 데이터 타입

Quform 플러그인 문서에 의하면 파일 업로드 필드의 데이터 타입은 배열(Array)이며 다음과 같은 키값을 가집니다.

키값입력값 예시
urlhttp://www.example.com/path/to/file-name.jpg (파일 URL)
filenamefile-name.jpg (파일명)
path/home/example.com/public_html/path/to/file-name.jpg (파일 경로)
typeimage/jpg (파일 유형)
size1234 (파일 크기)

하지만 Quform 설명서를 참조하여 코드를 추가하니 제대로 작동하지 않았습니다. 실제로 어떤 키값을 가지는지 궁금하여 테스트해보았습니다.

배열 값을 표시하는 방법은 Stackoverflow 게시글 "How can I echo or print an array in PHP?"(PHP에서 배열을 echo 또는 print 하는 방법)에 나와있는 코드를 참고했습니다.

foreach ($arr as $key=>$item){
    echo "$key => $item <br>";
}

파일을 업로드한 다음 제출해보니 다음과 같은 키값이 사용되는 것을 확인할 수 있었습니다.

Quform의 파일 업로드(File Upload) 필드의 데이터 타입

표로 정리해보면 다음과 같습니다.

키값입력값 예시
name파일-이름.jpg
size66780
typeimage/jpg
quform_upload_uidHmhw...
timestamp1656481931
path/home/example.com/public_html/wp-content/uploads/quform/1/2022/06/파일-이름.jpg
urlhttp://www.example.com/wp-conent/uploads/quform/1/2022/06/파일-이름.jpg

url과 name 키값을 활용하여 파일 다운로드 링크를 만들 수 있습니다.

Quform의 파일 업로드 필드

Quform의 File Upload 필드에서는 업로드가 가능한 파일 개수, 허용되는 파일 확장자(예: jpg, jpeg, png, gif, pdf - 일부 파일 확장자는 보안 문제 때문에 업로드가 불가할 수 있음), 허용되는 최대 파일 크기를 지정할 수 있습니다.

또한, 업로드된 파일을 서버에 저장할지 여부를 지정할 수도 있습니다.

Quform의 파일 업로드 필드

Save uploaded files to the server(업로드한 파일을 서버에 저장) 옵션을 활성화해야 업로드된 파일이 서버에 저장됩니다.

그리고 Path to save uploaded files(업로드된 파일을 저장할 경로)에서 Quform 문의 양식을 통해 업로드되는 파일이 저장될 경로를 변경할 수도 있습니다. 기본 경로는 quform/폼ID/연도/월/입니다.

파일을 미디어 라이브러리에도 추가가 가능합니다. 미디어 라이브러리에 추가하려면 Add to media library(미디어 라이브러리에 추가) 옵션을 선택하면 됩니다.

마치며

Quform 문의폼에서 사용자가 파일을 업로드하여 문의폼을 제출했을 때, 해당 데이터를 케이보드 게시판에 게시글로 등록되도록 하면서 업로드된 파일을 다운로드할 수 있는 링크도 함께 추가하고 싶을 때 상기 내용을 참조할 수 있습니다.

Quform, Contact Form 7 또는 WPForms 문의폼에서 제출한 콘텐츠를 KBoard 게시판에 게시글로 등록하도록 코드를 만드는 데 어려움을 겪는 경우 여기에서 서비스(유료)를 의뢰하실 수 있습니다.

참고

일부 글에 제휴 링크가 포함될 수 있으며 파트너스 활동으로 일정액의 수수료를 받을 수 있습니다.

댓글 남기기

* 이메일 정보는 공개되지 않습니다.