게스트 게이트 테마 컴포넌트

Guest Gate 2.0가 곧 출시됩니다! :rocket:

Guest Gate의 새로운 버전이 현재 개발 중이며, 이는 단순한 버전 업데이트보다 훨씬 큰 변화입니다.

2.0 버전은 재설계된 트리거 시스템, 더 현대적인 구현 방식, 훨씬 더 많은 사용자 지정 옵션, 그리고 최신 Discourse 버전과의 더 나은 호환성을 제공합니다.

:rocket: 새로운 트리거 시스템

2.0의 가장 큰 변화는 더 이상 페이지 뷰로만 제한되지 않는다는 점입니다.

이제 Guest Gate가 트리거되는 방식을 선택할 수 있습니다:

  • 페이지 뷰 - 설정한 수의 페이지 뷰 후에 게이트 표시

  • 시간 - 페이지에 특정 시간 동안 머문 후에 표시

  • 스크롤 - 방문자가 페이지의 설정된 비율에 도달한 후에 표시

  • 라이트박스 - 게스트가 이미지를 열 때 표시

  • 모두 - 여러 트리거 유형이 게이트를 트리거하도록 허용

이를 통해 훨씬 더 정교한 게스트 게이팅 전략을 만들 수 있습니다.

:repeat_button: 새로운 반복 동작

Guest Gate가 표시된 후에 일어나는 일을 제어할 수 있습니다:

  • 트리거 반복 - 설정된 트리거가 발생할 때마다 다시 표시

  • 무작위 페이지 뷰 - 무작위 수의 페이지 뷰 후에 다시 표시

  • 세션당 1회 - 브라우저 세션 동안에만 한 번 표시

무작위 페이지 뷰 반복을 위한 새로운 설정 가능한 임계값도 있습니다.

기존의 “1회만 표시” 설정은 하위 호환성을 위해 여전히 지원됩니다.

:stopwatch: 지연 표시

이제 트리거가 발동된 후에 설정 가능한 지연 시간을 두고 게이트를 표시할 수 있습니다.

예를 들어, 50% 스크롤 깊이에 도달했을 때 게이트를 트리거하되, 모달이 열리기 전에 750ms를 더 기다릴 수 있습니다.

이는 경험을 훨씬 덜 침습적으로 만들어 줄 수 있습니다.

:artist_palette: 모달에 대한 더 많은 제어

2.0 버전은 여러 가지 새로운 사용자 지정 옵션을 추가했습니다:

  • 컴팩트, 표준, 또는 와이드 모달

  • 모달 제목 표시 또는 숨김

  • 설정 가능한 제목 위치

  • 개선된 반응형 동작

:framed_picture: 개선된 커스텀 게이트

커스텀 게이트도 상당한 업데이트를 받았습니다.

이제 다음을 수행할 수 있습니다:

  • 커스텀 이미지에 대체(alt) 텍스트 추가

  • 커스텀 텍스트 콘텐츠 더 잘 제어

  • 커스텀 작은 텍스트 필드에 HTML 콘텐츠 사용 (단락 및 줄바꿈 포함)

  • 색상 및 간격 더 잘 제어

커스텀 콘텐츠는 새로운 구현 방식에서 더 깔끔하게 처리됩니다.

:gear: 현대화된 구현

내부적으로, Guest Gate 2.0은 크게 현대화되었습니다.

기존 구현 방식은 레거시 플러그인 초기화자, Discourse 페이지 추적 및 jQuery 기반 라이트박스 처리에 의존했습니다.

2.0은 이제 Discourse의 현대적인 API 초기화자와 페이지 변경 API를 사용하며, 트리거, 타이머, 스크롤 리스너, 세션 상태 및 모달 상태를 관리하는 전용 게이트 컨트롤러를 갖추고 있습니다.

이는 또한 향후 컴포넌트를 유지보수하고 확장하기 쉽게 만들어 줍니다.

:counterclockwise_arrows_button: 기존 설치 환경 고려

2.0의 중요한 목표 중 하나는 기존 사용자들이 수동으로 설정을 다시 구성하도록 강요하지 않는 것이었습니다.

새로운 버전에는 기존 Guest Gate 설정을 새로운 대응 설정으로 변환하는 설정 마이그레이션이 포함되어 있습니다.

예를 들어, 기존 max_guest_topic_views 설정은 자동으로 새로운 페이지 뷰 구성 및 반복 동작으로 마이그레이션됩니다.

기존 라이트박스 설정도 자동으로 새로운 트리거 시스템에 매핑됩니다.

따라서 업그레이드 시 기존 설치 환경의 동작을 최대한 보존해야 합니다.

:broom: 더 깔끔한 구성

기존 설정 중 일부도 정리되었으며, 관리자 인터페이스를 이해하기 쉽게 설명이 다시 작성되었습니다.

로그인 / 가입, Discourse Connect, 커스텀 URL 및 버튼 로직도 내부적으로 재구성되었습니다.


다음 단계는?

Guest Gate 2.0은 현재 마무리 및 테스트 단계에 있습니다.

이 릴리스는 향후 Guest Gate 기능의 견고한 기반이 되면서, 관리자가 게이트가 언제, 어디에, 어떻게 표시되는지에 대해 훨씬 더 많은 제어를 할 수 있도록 하는 것을 목표로 합니다.

이미 Guest Gate를 사용 중이라면, 업그레이드 시 기존 설정이 자동으로 마이그레이션됩니다.


:test_tube: v2.0을 미리 테스트해 보고 싶으신가요?

아래 링크에서 브랜치를 시도해 볼 수 있습니다: GitHub v2.0 Branch

6개의 좋아요