개발 slecs

사용자가 언제든 약관에 접근할 수 있도록 footer 정비

목차

이용약관 전용 페이지를 만들고 footer에 링크를 추가했다. 간단한 작업처럼 보이지만, 서비스가 커질수록 얼마나 중요한 요구사항인지 깨달았던 변경이다.

법적 요건은 기능 요구사항만큼 중요하다

이전까지는 약관이 명확하게 접근 가능한 위치에 없었다. 사용자는 서비스를 이용하면서 약관이 어디에 있는지 찾기 어려울 수 있고, 우리 입장에서도 "약관에 동의했다"라는 증거를 명확히 남기기 어렵다. 이건 단순히 UX 문제가 아니라 법적·비즈니스 리스크다.

보통 결제 플랫폼이나 개인정보를 다루는 서비스라면, 이용약관과 개인정보 처리방침은 언제 어디서나 접근 가능해야 한다. 그래야 사용자도 안심하고, 우리도 "사용자가 충분히 정보를 제공받고 서비스를 이용했다"는 것을 증명할 수 있다. 특히 팀 입장에서는:

  • 컴플라이언스 검수 시 신속하게 약관이 어디 있는지 보여줄 수 있고
  • 사용자 분쟁 발생 시 "footer에 명시된 약관이 있으니 참고하세요"라고 안내할 수 있으며
  • 신규 기능 출시 전 법무팀과의 검수 프로세스를 명확하게 진행할 수 있다

구현: 페이지와 네비게이션의 두 가지 작업

파일 역할 변경 내용
src/pages/terms.astro 약관 콘텐츠 페이지 새로 추가. 마크다운 또는 HTML로 약관 텍스트 렌더링
src/components/Footer.astro 글로벌 footer 컴포넌트 약관 페이지 링크 추가. 모든 페이지에서 자동으로 노출

Astro 프레임워크를 사용하면 src/pages/ 아래의 .astro 파일이 자동으로 페이지가 된다. 그래서 terms.astro를 추가하는 것만으로 /terms 경로가 바로 생성된다. 그다음 Footer 컴포넌트에서 이 경로로 가는 링크를 넣으면, 모든 페이지의 하단에서 약관을 찾을 수 있게 된다.

이렇게 하면:
- 단순성: 새 파일 하나 + 컴포넌트 한 줄 수정으로 완료
- 일관성: 전체 사이트의 footer가 동일하므로 어느 페이지에서든 같은 링크를 볼 수 있음
- 유지보수성: 약관 내용을 변경할 때도 terms.astro만 수정하면 됨

팀 협업 관점에서 배운 것

이런 작업을 할 때 나는 두 가지를 신경 썼다.

첫째, 누구를 위한 작업인가를 명확히 하기. 이용약관 페이지 추가는 개발자 입장에선 "페이지 하나 만드는 것"이지만, 실제로는 사용자(신뢰감), 법무팀(컴플라이언스), 그리고 나중에 이 코드를 유지보수할 팀원(명확한 구조)을 모두 고려해야 한다. commit 메시지에 "add 이용약관 page"라고만 썼지만, 이건 단순 기능 추가가 아니라 서비스의 법적 기반을 정비하는 작업이었다.

둘째, 작은 변경도 맥락 있게 전달하기. 팀원이 이 commit을 봤을 때 "아, 약관이 필요했구나"라고 이해할 수 있도록 commit 메시지나 PR 설명에 "왜 이 작업을 했는가"를 포함시켜야 한다. 특히 legal이나 compliance 같은 비기술 도메인은 더 그렇다.

셋째, 이런 류 작업은 한 번에 완성하는 게 좋다. 약관 페이지는 있는데 footer 링크가 없다면, 결국 사용자는 여전히 약관을 찾을 수 없다. 따라서 "페이지 생성" + "네비게이션 연결"을 한 번의 PR에 포함시켜서 "이제부터 약관이 완전하게 접근 가능하다"는 상태에 도달하는 게 중요하다.


🛒 이 글과 어울리는 추천 상품

*위 링크는 쿠팡파트너스 활동의 일환이며, 일정액의 수수료를 제공받을 수 있습니다.

댓글 0

첫 댓글 달아줘.