워드프레스 Ninja Forms: 쿼리 문자열 변수 전달하기

Last Updated: 2023년 07월 19일 | | 2개 댓글

이 블로그에서 "워드프레스 Quform/Gravity Forms에서 URL로 파라미터를 전달하는 방법"이라는 글을 통해 워드프레스 문의폼 플러그인인 Quform과 Gravity Forms에서 URL 파라미터를 전달하는 방법에 대하여 설명한 적이 있습니다. 동일한 기능을 Ninja Forms에서도 제공됩니다. 이 글에서는 Ninja Forms에서 쿼리 문자열 변수를 전달하는 방법에 대하여 살펴보겠습니다.

워드프레스 Ninja Forms: 쿼리 문자열 변수 전달하기

예를 들어, 페이스북이나 네이버 카페 등에서 링크를 클릭하여 문의를 하게 되는 경우, 사용자가 어떤 링크를 클릭하여 유입되었는지를 알고 싶은 경우가 있을 수 있습니다. 또는, 제휴 프로그램을 실행한다면, 추천인 링크에 해당 추천인을 식별할 수 있는 파라미터(예: 아이디 등)를 추가하고 그 값을 전달 받을 수 있을 것입니다.

이런 상황에서 URL에 ?key=value 형식으로 쿼리 문자열을 추가하여 매개변수 값을 전달할 수 있습니다.

"소스"라는 필드를 통해 쿼리 문자열 변수를 받고 싶은 경우, 해당 필드를 선택하고 오른쪽에서 "표시하기"를 클릭하여 기본 값 필드에 {querystring:YOUR_KEY} 형식으로 입력합니다. 만약 /?source=값 형식으로 전달하려면 YOUR_KEY 대신 source를 입력합니다.

워드프레스 Ninja Forms: 쿼리 문자열 변수 전달하기

이 필드를 표시하지 않고 싶은 경우에는 Hidden 필드(보이지 않음 필드)를 이용할 수 있습니다. 또는, 일반 텍스트 필드를 추가하고 CSS로 display:none;을 적용하여 숨길 수 있습니다. (숨김 필드가 제공되므로 굳이 이 방법을 이용할 필요는 없습니다.)

이제 http://example.com/contact/?source=값 이런 형식으로 링크를 설정하면 방문자가 해당 링크 클릭 시 "소스" 필드에 쿼리 문자열 값이 기본값으로 채워져서 전달됩니다.

이외에도 Ninja Forms에서는 다양한 값을 동적으로 미리 입력할 수 있습니다. 예를 들어, 현재 폼이 삽입된 페이지/포스트의 ID, 제목, URL 등을 미리 입력하도록 설정할 수 있습니다. 또한, 로그인 사용자가 문의 양식을 제출할 때에는 로그인 사용자의 이름과 성, 사용자 ID(User ID), 사용자 닉네임, 로그인명 등의 회원 정보도 전달할 수 있습니다.

Ninja Forms 로그인 사용자 정보를 기본값으로 입력하기

Contact Form 7, WPForms, Quform 등의 컨택트 폼 플러그인에서도 로그인 사용자의 정보를 미리 입력하도록 설정할 수 있습니다.

이 기능을 사용하면 사용자의 이름이나 이메일 정보가 미리 입력되어 있으므로 회원들이 보다 편리하게 문의폼을 작성할 수 있습니다. 또한, 케이보드 등과 연동 시에도 회원 정보를 전달하여 케이보드 등에서 회원 관련 기능을 사용할 수 있게 됩니다.

마치며

이상으로 워드프레스 인기 컨택트 폼 플러그인 중 하나인 Ninja Forms에서 쿼리 문자열 변수를 전달하는 방법에 대하여 살펴보았습니다. 닌자 폼 플러그인은 현재 90만 개가 넘는 워드프레스 사이트에 설치되어 사용 중입니다. 무료 버전에서도 비교적 괜찮은 기능을 제공하는 것 같습니다. 유료 버전을 사용하면 문의 양식 제출 횟수를 제한하는 등의 추가적인 기능을 이용할 수 있습니다.

참고


2 개 댓글

Leave a Comment

    • 둘 모두 괜찮은 컨택트 폼 플러그인인 것 같습니다. 무료 버전을 사용하려는 경우, 사용 편의성에서는 WPForms가 조금 더 낫지 않을까 생각됩니다. 무료버전에서 기능성은 Ninja Forms가 좋아 보입니다. 다만, 테스트해보니 셀렉트 필드 등에서 한글이 옵션값으로 들어가면 전달하지 못하는 버그가 있는 것 같습니다. 이 문제를 닌자 폼 개발자에게 문의했는데, 답변이 없네요. 추후에 한 번 더 테스트해 보고, 문제가 지속된다면 한글 옵션을 사용할 수 있는 회피 방법에 대하여 설명해겠습니다.

      응답