[버블 스터디 2주차] GTM 연동하기, 공유하기 기능, 입력폼 에러메세지 구현

소개

지난글: https://gpters.org/nocode/post/bubblero-da-gwanggo-moniteoring-seobiseuyi-mvp-guhyeonhaebogi-mILOfcU06HMSWZv?highlight=QKHpzDFHWV4my53

지난 번에는 서비스의 메인 기능을 개발했다면 이번에는 디테일한 부분을 추가하여 서비스의 완성도를 높이는 것이 목표였습니다.

또한 추가로 유저 데이터 수집을 위해 GTM 설치를 해보았습니다.

서비스 링크: https://wdpdevdev.bubbleapps.io/version-test

진행 방법

사용도구
1. 버블
2. GTM(구글태그매니저)
3. Chat GPT

학습내용

  1. GTM 연동하기

    • 서비스 출시 후 유저 데이터를 확보하기 위해 GTM을 설치하였습니다.

    • 설치 방법은 매우 간단했습니다. 버블의 설정에서 SEO / metatags에 들어간 뒤 GTM에서 제공하는 스크립트를 각각 header와 body에 넣어주면 설치됩니다.

    • 다만 해당 기능은 유료 버전에서만 사용 가능합니다.

      열린 탭이 강조 표시된 페이지의 스크린 샷
      버튼이 강조된 페이지의 스크린 샷
      한국의 Google 검색 페이지의 스크린 샷

    • GTM 디버그 모드와 사이트의 개발자 도구 모두 GTM이 잘 설치된 것을 확인할 수 있었습니다.

      한국 웹 사이트의 스크린 샷

    • 저는 서비스 내에서 유저가 입력폼을 클릭할 때와 신청하기(submit) 버튼, 공유하기 버튼을 클릭하는 데이터를 보고 싶었습니다.

    • 따라서 GTM에 해당 영역들을 클릭할 때 트리거가 발생하게끔 연결을 하려고 했고, 이를 위해서는 각 영역별로 ID를 지정해주어야 했습니다.

    • ID를 지정하고 싶은 요소를 클릭한 뒤 Appearance의 가장 하단에 보면 ID Attrubute 입력란이 있고 여기에 ID를 지정해주면 됩니다.

    • 이후 해당 ID를 활용하여 GTM에서 트리거를 생성해주면 됩니다.

      버튼이 강조된 웹 페이지의 스크린 샷
      Google Docs- 스크린 샷 1

    • 저는 GA 대신 믹스패널이라는 PA툴에 연동을 해놨는데요, 데이터가 잘 수집되는 것을 확인할 수 있었습니다.

      Adobe Adobe Adobe Adobe Adobe의 스크린 샷
  2. 공유하기 기능

    • 서비스 이용 시 가장 마지막 화면에 공유하기 기능을 추가하여 바이럴 루프를 만들고 싶었습니다.

    • 신청완료 화면에 링크 공유 아이콘을 추가해줍니다.

    • 아이콘에 워크플로우를 생성하겠습니다.

      버튼이 강조된 웹 페이지의 스크린 샷

    • 해당 기능은 자바스크립트로 구현해야 하므로 Run javascript를 선택해줍니다.

      Adobe Adobe Adobe Adobe Adobe의 스크린 샷
      Adobe Adobe Adobe Adobe Adobe Adobe Adobe

    • Script에 코드를 넣어줍니다. 참고로 해당 코드는 챗지피티에게 물어보았습니다.

    • 아이콘을 클릭하면 사이트 링크가 복사되고 '링크가 복사되었습니다!'라는 메세지가 뜨고, 만약 실패 시 '복사 실패'라는 에러 메세지가 뜨게 했습니다.

      Adobe Adobe Adobe Adobe Adobe Adobe Adobe

    • 테스트 결과 링크가 정상적으로 복사되었고 메세지도 잘 뜨는 것을 볼 수 있었습니다.

  3. 입력폼 에러메세지 구현

    • 서비스 신청을 위한 입력폼 중 필수값 미입력 시 또는 형식이 잘못된 경우 유저에게 안내를 위해 에러메세지를 뜨게 했습니다.

    • 기존에는 입력폼의 테두리 색만 빨간색으로 변경되었고 별도의 에러메세지는 뜨지 않았습니다. (버블에서 기본으로 제공하는 기능)

    • 먼저 에러메세지 텍스트를 입력합니다. (참고로 저는 입력필드와 에러메세지 사이의 gap을 조절하기 위해 두 요소를 그룹으로 묶어주었습니다)

      여러 옵션이 강조 표시된 웹 페이지의 스크린 샷

    • 에러메세지는 처음에는 뜨면 안되기 때문에 페이지 로드 시에는 보이지 않게 설정을 해놓았습니다. (해당 기능의 자세한 내용은 1주차 사례 게시글 참고)

      Google 애드워즈 계정의 스크린 샷

    • 이후 Conditional에서 조건을 추가해줍니다.

      버튼이 강조된 웹 페이지의 스크린 샷

    • 먼저 When에 입력필드(Dropdown)의 형식이 맞지 않을 때(isn't valid)를 조건으로 추가해줍니다.

      강조 표시된 버튼이있는 Google 검색 페이지의 스크린 샷

    • 이후 프로퍼티 중 This element is visible를 선택해주면 끝입니다.

    • 이 방식으로 모든 입력필드에 에러메세지를 추가해주었습니다.

      한국 웹 사이트의 스크린 샷

    • 테스트 결과 에러메세지가 잘 표시되는 것을 확인할 수 있었습니다.

      한국 웹 사이트의 스크린 샷

결과와 배운 점

2
2개의 답글

뉴스레터 무료 구독

👉 이 게시글도 읽어보세요