[PLUGIN] - AutoForm 접수폼 플러그인
문의 접수 폼을 하나 만들어 화면에 붙이고, 들어온 내용을 관리하는 데까지 필요한 것만 담았습니다.
## 1. 설치
1. 압축을 풀어 `AutoForm` 폴더를 사이트의 `plugins/` 안에 올립니다.
2. 관리자 → **확장 기능**에서 오토폼을 찾아 활성화합니다.
3. 설치 버튼을 눌러 마이그레이션을 실행합니다. 표가 만들어집니다.
설치가 끝나면 관리자 메뉴에 **접수양식 관리**와 **접수내역 관리**가 생깁니다.
## 2. 폼 만들기
**접수양식 관리 → 새 양식**으로 들어갑니다.
**기본 정보**에서 양식 이름과 코드를 정합니다. 코드는 주소에 쓰이므로 영문·숫자·하이픈만 쓰고, 운영을 시작한 뒤에는 바꾸지 마세요. 링크가 끊깁니다.
**필드**를 추가합니다. 문의 폼이라면 보통 이 정도입니다.
| 라벨 | 타입 | 필수 |
|------|------|------|
| 이름 | text | ○ |
| 연락처 | tel | ○ |
| 이메일 | email | |
| 문의 내용 | textarea | ○ |
선택지가 필요한 필드(`select` `radio` `checkbox`)는 옵션을 한 줄에 하나씩 적습니다.
**관리자 전용**으로 표시한 필드는 제출 화면에 나오지 않습니다.
접수를 받은 뒤 담당자가 채우는 칸(견적 금액, 상담 결과 같은 것)에 씁니다.
저장하면 폼이 만들어집니다.
## 3. 화면에 붙이기
세 가지 방법이 있습니다. 하나만 고르면 됩니다.
**블록으로 붙이기 (가장 많이 쓰는 방법)**
블록 편집기에서 콘텐츠 타입 **폼**을 고르고 방금 만든 양식을 선택합니다.
스킨을 바꾸면 생김새가 달라집니다. 원하는 위치에 두면 끝입니다.
**링크로 열기**
`https://내사이트/auto-form/render/양식코드`
이 주소를 메뉴에 걸거나 문자·메일로 보냅니다. 폼만 있는 페이지가 열립니다.
**직접 만든 화면에서 쓰기**
화면을 따로 만들고 제출만 맡기려면 API를 씁니다. 자세한 규격은 README.md 를 보세요.
## 4. 알림 받기
들어온 접수를 바로 알고 싶다면 **폼 편집 → 자동 액션** 탭에서 설정합니다.
- **자동 응답** — 제출한 사람에게 확인 메일을 보냅니다. 내용에 `#{field:이름}` 처럼 적으면 그 사람이 입력한 값으로 바뀝니다.
- **웹훅** — 외부 서비스로 내용을 넘깁니다. 주소를 넣고 테스트 버튼으로 먼저 확인하세요. 설정 항목과 전송되는 데이터 형식은 [WEBHOOK.md](WEBHOOK.md) 에 있습니다.
알림톡이나 문자 플러그인이 설치되어 있으면 그 채널도 선택지에 나타납니다.
자동 액션을 하나도 설정하지 않으면 폼에 적어둔 수신자에게 이메일로만 알려줍니다.
## 5. 접수 확인하고 처리하기
**접수내역 관리**에서 들어온 내용을 봅니다.
목록에서 양식·기간·상태로 걸러 볼 수 있고, 건을 클릭하면 상세 화면이 열립니다. 상세에서는 이렇게 씁니다.
- **상태 바꾸기** — 접수 → 상담중 → 완료처럼 진행 단계를 표시합니다. 상태 항목은 아래 6번에서 만듭니다.
- **처리 결과** — 대기 / 성공 / 보류 / 실패 중에 고릅니다. 성과를 집계할 때 쓰는 칸입니다.
- **담당자 지정** — 누가 맡을지 정합니다.
- **메모** — 통화 내용 같은 것을 남깁니다. 답글도 달 수 있고, 제출한 사람에게는 보이지 않습니다.
- **재발송** — 알림이 실패했을 때 다시 보냅니다.
## 6. 진행 상태 만들기 (선택)
접수 건의 진행 단계를 관리하려면 폼에 **status** 타입 필드를 하나 추가합니다.
옵션에 단계를 순서대로 적습니다. 예를 들어 `접수`, `상담중`, `완료`, `취소`.
- 첫 번째 옵션이 접수될 때의 기본값이 됩니다.
- 이 필드는 제출자에게 보이지 않습니다. 관리자만 씁니다.
- 폼 하나에 하나만 둘 수 있습니다.
## 7. 개인정보 다루기
**약관 연결** — 폼 편집에서 사이트에 등록된 약관을 연결하면 동의 체크박스가 자동으로 붙습니다. 누가 언제 어느 버전에 동의했는지 함께 기록됩니다.
**보관기간** — 폼마다 보관 기간을 정할 수 있습니다. 기간이 지난 접수는 **접수내역 관리**의 정리 버튼으로 한 번에 지웁니다. 자동으로 지워지지는 않으니 주기를 정해두시길 권합니다.
**암호화** — 민감한 필드는 암호화해 저장합니다. 관리자 화면에서는 정상적으로 보입니다.
## 자주 막히는 곳
**폼이 화면에 안 보입니다**
양식이 사용 중인지 확인하세요. 접수양식 관리 목록에서 사용 여부를 켜야 합니다.
**메일이 안 옵니다**
사이트의 메일 발송 설정이 먼저 되어 있어야 합니다. 접수 상세의 발송 기록에서 실패 사유를 볼 수 있습니다.
**같은 사람이 여러 번 눌렀는데 하나만 들어왔습니다**
의도된 동작입니다. 짧은 시간 안의 같은 제출은 중복으로 보고 한 번만 저장합니다.
**제출이 막힙니다**
같은 인터넷 회선에서 짧은 시간에 여러 번 보내면 잠시 차단됩니다. 스팸을 막기 위한 것으로, 잠시 뒤 풀립니다.
**필드를 지웠는데 예전 접수 내용이 그대로 보입니다**
정상입니다. 접수는 그때의 폼 구성을 함께 저장하므로, 나중에 폼을 바꿔도 예전 기록은 원래 모습대로 남습니다.
총 1명이 반응했습니다.
반응을 남기려면 로그인하세요.
댓글 0
등록된 댓글이 없습니다.