안녕하세요 @KhoiUSA
감사합니다. 업데이트를 병합했습니다: DEV: Migrate FA5 icons to FA6 - Pull Request #25 - VaperinaDEV/discourse-guest-gate-theme-component - GitHub ![]()
업데이트 감사합니다!
안녕하세요 - 새로운 Discourse 인스턴스에 이 컴포넌트를 설치하려고 시도했지만, 모달이 표시되도록 설정될 때 오류가 발생합니다:
해당 링크는 이 게시물을 가리킵니다.
게시물이 2023년 것이므로, 이 컴포넌트에 대해 해당 업데이트가 필요한 것이 놀랍습니다. 따라서 설치를 잘못 수행한 것이 아닌지 궁금합니다.
안녕하세요
올바른 구성 요소를 사용하도록 확인하기 위해 해당 구성 요소를 제거하고 이 주소를 다시 설치해 주시겠습니까? GitHub - VaperinaDEV/discourse-guest-gate-theme-component: Forced login / registration popup insired by Quora · GitHub
도와주셔서 감사합니다. 이제 작동합니다!
다만, 모달의 텍스트를 업데이트하는 데 어려움을 겪고 있습니다. 제목은 성공적으로 업데이트할 수 있지만, 본문 텍스트를 수정하는 방법을 모르겠습니다. 잘못된 필드를 수정하고 있는 건가요?
안녕하세요 @Don. 좋은 컴포넌트를 만들어 주셔서 감사합니다. 컴포넌트의 의도(사실상 제목)가 게스트/익명 사용자를 대상으로 트리거가 되는 것임을 확인했습니다. 그룹 또는 신뢰 수준 기반 조건에 대한 설정을 추가할 수 있을까요? 특정 카테고리의 주제를 방문하는 로그인된 사용자에게 모달을 표시하려고 하고 있습니다. 이는 Discourse-subscriptions 및 category-lockdown를 보완할 것입니다.
안녕하세요 @Don
컴포넌트를 공유해 주셔서 감사합니다. 저희는 포럼 https://community.escapecollective.com/ 에서 이 플러그인을 사용하고 있습니다. 그런데 문제가 하나 있습니다: max_guest_topic_views 파라미터를 1보다 큰 값(저희의 경우 3)으로 설정하면, 모달 창이 잠시 표시된 후 즉시 사라집니다. JS를 로드할 때 Discourse가 “소프트” 페이지 새로 고침(Ember SPA 라우팅)을 수행하여, 그 시점에 뷰 카운터가 리셋되고 모달 창이 즉시 사라지는 것 같습니다. 이 문제는 Discourse를 3.5.0.beta9-dev 버전으로 업데이트한 후에 발생한 것으로 보입니다. 이 문제를 해결하는 데 도움을 주실 수 있을까요?

참고로, 이 문제를 재현해 보려 했지만 재현되지 않습니다.
최신 버전으로 업데이트한 후 이 Theme 컴포넌트가 의도한 대로 작동하는 것을 확인했습니다.
기본 테마에서 사용해 보셨나요?
@merefield 답변해 주셔서 감사합니다. 하지만 네, 저희는 기본 테마를 사용하고 있습니다. https://community.escapecollective.com/ 에서 직접 확인해 보실 수 있습니다. 문제를 보여주는 다른 영상이 하나 더 있습니다:

자바스크립트 콘솔에 뭔가 표시됩니까?
@merefield 아무것도 없음
안녕하세요 ![]()
이것은 Topic Cards 테마 컴포넌트와 관련된 문제인 것 같습니다. 주제 제목을 클릭하면 전체 페이지 로드가 강제되어 이 문제가 발생합니다. 제목 이외의 다른 부분을 클릭하여 주제를 열면 페이지 재로딩이 발생하지 않아 SPA 로딩만 이루어지기 때문에 게스트 게이트가 정상적으로 작동합니다.
문제는 Topic Cards 테마 컴포넌트 주제에서 보고해 주시기 바랍니다.
안녕하세요 @Don
네, 맞습니다. Topic Cards 구성 요소를 비활성화하면 모든 것이 예상대로 정상 작동합니다. 이 두 구성 요소를 모두 사용해야 하므로 Topic Cards 스레드에 글을 남겨보겠습니다.
감사합니다!
Topic List Previews 역시 Topic Cards와 유사하게 Tiles에 대해 와이드 포맷 옵션을 제공하며, 현재 GG에서도 정상적으로 작동하고 있습니다. Topic Cards의 수정이 완료될 때까지 이 기능을 사용해 보시는 것을 권해 드립니다…
훌륭한 컴포넌트입니다
. custom_gate.little_text 필드에서 줄바꿈이나 단락을 사용할 수 있는지 알고 싶었습니다.
답변 부탁드립니다.
안녕하세요 ![]()
네, 맞습니다. custom_gate.little_text는 htmlSafe로 렌더링되므로, HTML을 사용할 수 있습니다. 예를 들어 줄바꿈에는 <br>, 개별 단락에는 <p> 태그를 사용할 수 있습니다.
예시:
첫 번째 줄.<br>
두 번째 줄.
또는
<p>첫 번째 단락.</p>
<p>두 번째 단락.</p>
안녕하세요 ![]()
늦어서 죄송합니다.
아직 이 기능에 대한 설정은 없지만, 간단한 테마 컴포넌트로 구현할 수 있습니다.
.d-modal.gate {
.d-modal__title {
margin: auto;
}
}
Guest Gate 2.0가 곧 출시됩니다! 
Guest Gate의 새로운 버전이 현재 개발 중이며, 이는 단순한 버전 업데이트보다 훨씬 큰 변화입니다.
2.0 버전은 재설계된 트리거 시스템, 더 현대적인 구현 방식, 훨씬 더 많은 사용자 지정 옵션, 그리고 최신 Discourse 버전과의 더 나은 호환성을 제공합니다.
새로운 트리거 시스템
2.0의 가장 큰 변화는 더 이상 페이지 뷰로만 제한되지 않는다는 점입니다.
이제 Guest Gate가 트리거되는 방식을 선택할 수 있습니다:
-
페이지 뷰 - 설정한 수의 페이지 뷰 후에 게이트 표시
-
시간 - 페이지에 특정 시간 동안 머문 후에 표시
-
스크롤 - 방문자가 페이지의 설정된 비율에 도달한 후에 표시
-
라이트박스 - 게스트가 이미지를 열 때 표시
-
모두 - 여러 트리거 유형이 게이트를 트리거하도록 허용
이를 통해 훨씬 더 정교한 게스트 게이팅 전략을 만들 수 있습니다.
새로운 반복 동작
Guest Gate가 표시된 후에 일어나는 일을 제어할 수 있습니다:
-
트리거 반복 - 설정된 트리거가 발생할 때마다 다시 표시
-
무작위 페이지 뷰 - 무작위 수의 페이지 뷰 후에 다시 표시
-
세션당 1회 - 브라우저 세션 동안에만 한 번 표시
무작위 페이지 뷰 반복을 위한 새로운 설정 가능한 임계값도 있습니다.
기존의 “1회만 표시” 설정은 하위 호환성을 위해 여전히 지원됩니다.
지연 표시
이제 트리거가 발동된 후에 설정 가능한 지연 시간을 두고 게이트를 표시할 수 있습니다.
예를 들어, 50% 스크롤 깊이에 도달했을 때 게이트를 트리거하되, 모달이 열리기 전에 750ms를 더 기다릴 수 있습니다.
이는 경험을 훨씬 덜 침습적으로 만들어 줄 수 있습니다.
모달에 대한 더 많은 제어
2.0 버전은 여러 가지 새로운 사용자 지정 옵션을 추가했습니다:
-
컴팩트, 표준, 또는 와이드 모달
-
모달 제목 표시 또는 숨김
-
설정 가능한 제목 위치
-
개선된 반응형 동작
개선된 커스텀 게이트
커스텀 게이트도 상당한 업데이트를 받았습니다.
이제 다음을 수행할 수 있습니다:
-
커스텀 이미지에 대체(
alt) 텍스트 추가 -
커스텀 텍스트 콘텐츠 더 잘 제어
-
커스텀 작은 텍스트 필드에 HTML 콘텐츠 사용 (단락 및 줄바꿈 포함)
-
색상 및 간격 더 잘 제어
커스텀 콘텐츠는 새로운 구현 방식에서 더 깔끔하게 처리됩니다.
현대화된 구현
내부적으로, Guest Gate 2.0은 크게 현대화되었습니다.
기존 구현 방식은 레거시 플러그인 초기화자, Discourse 페이지 추적 및 jQuery 기반 라이트박스 처리에 의존했습니다.
2.0은 이제 Discourse의 현대적인 API 초기화자와 페이지 변경 API를 사용하며, 트리거, 타이머, 스크롤 리스너, 세션 상태 및 모달 상태를 관리하는 전용 게이트 컨트롤러를 갖추고 있습니다.
이는 또한 향후 컴포넌트를 유지보수하고 확장하기 쉽게 만들어 줍니다.
기존 설치 환경 고려
2.0의 중요한 목표 중 하나는 기존 사용자들이 수동으로 설정을 다시 구성하도록 강요하지 않는 것이었습니다.
새로운 버전에는 기존 Guest Gate 설정을 새로운 대응 설정으로 변환하는 설정 마이그레이션이 포함되어 있습니다.
예를 들어, 기존 max_guest_topic_views 설정은 자동으로 새로운 페이지 뷰 구성 및 반복 동작으로 마이그레이션됩니다.
기존 라이트박스 설정도 자동으로 새로운 트리거 시스템에 매핑됩니다.
따라서 업그레이드 시 기존 설치 환경의 동작을 최대한 보존해야 합니다.
더 깔끔한 구성
기존 설정 중 일부도 정리되었으며, 관리자 인터페이스를 이해하기 쉽게 설명이 다시 작성되었습니다.
로그인 / 가입, Discourse Connect, 커스텀 URL 및 버튼 로직도 내부적으로 재구성되었습니다.
다음 단계는?
Guest Gate 2.0은 현재 마무리 및 테스트 단계에 있습니다.
이 릴리스는 향후 Guest Gate 기능의 견고한 기반이 되면서, 관리자가 게이트가 언제, 어디에, 어떻게 표시되는지에 대해 훨씬 더 많은 제어를 할 수 있도록 하는 것을 목표로 합니다.
이미 Guest Gate를 사용 중이라면, 업그레이드 시 기존 설정이 자동으로 마이그레이션됩니다.
v2.0을 미리 테스트해 보고 싶으신가요?
아래 링크에서 브랜치를 시도해 볼 수 있습니다: GitHub v2.0 Branch




