안녕하세요… 긴 메시지라 죄송합니다. 며칠 동안 ask.discourse와 제 Claude 인스턴스를 이용해 직접 해결하려고 시도해 보았거든요. Claude에게 우리가 시도한 내용과 다른 질문들을 포함한 첨부된 보고서를 작성하게 했습니다. 먼저 초기 맥락을 공유드립니다…
Discourse 지원팀을 위한 전체 맥락
사이트: canbarforum.incba.org (회원 관리 시스템에서 SSO 필요)
테마: Horizon (공식 Discourse 원격 테마)
Discourse 버전: v2026.9.0-latest (Ember v7.2.0)
서드파티 통합: Zoho SalesIQ (방문자 추적 위젯, 의도적으로 “바쁨” 상태로 유지 — 추적 전용이며, 보이는 채팅 버블은 의도하지 않음)
목표
Zoho SalesIQ를 순수하게 익명 방문자 추적(페이지 뷰, 실시간 접속)용으로 설치 — 위젯이 의도적으로 “바쁨” 상태로 유지되므로 보이는 채팅 버블 없이.
데스크톱에서는 완벽하게 작동합니다. 모바일 브라우저에서는 페이지 전체를 덮는 검은색 화면이 표시됩니다.
현재 증상 (미해결)
● 데스크톱: 완전히 정상 작동, 추적 기능 정상, 시각적 문제 없음.
● 모바일 (모든 브라우저 테스트 완료 — Android Chrome, iOS): 페이지는 로드되며, Discourse의 실제 콘텐츠가 DOM 아래에 존재하고 구조적으로 정확함이 확인되었지만, 검은색 레이어가 시각적으로 뷰포트 전체를 덮고 있습니다.
● Chrome DevTools 모바일 에뮬레이션(Samsung Galaxy S20 Ultra 프로필)을 통해 Discourse의 Ember 앱이 올바르게 부팅되는 것이 확인되었습니다 — 이는 Discourse JS/부트스트랩 실패가 아닙니다. 완전히 정상 작동하는 페이지 위에 무언가가 그려지고 있습니다.
Hi @chapoi … 답변 감사합니다! 참고로 저는 코드를 작성하지 않기 때문에, Claude와 DiscourseHelper를 조합해서 가능한 모든 수정 방법을 시도해 보았습니다. 여러 개의 커스텀 CSS 해킹도 포함이었죠. 아무것도 작동하지 않았습니다. (P.S. Claude에게 우리가 시도한 모든 것을 문서화하도록 했는데, 그 내용은 OP에 첨부한 PDF 파일에 있습니다.)
그럼에도 불구하고, 제가 여러분이 링크해 주신 SalesIQ 변경 사항을 몰랐습니다. 그 부분이 해결책이 될 수도 있겠네요. (수정: 해당 기사가 9년 전 것이네요) 참고로, 임베드할 스크립트의 최신 복사본을 가져올 때(그리고 방금 추적 전용 코드를 검색할 때), 그 옵션을 보지 못했습니다… 하지만 제가 그걸 찾고 있지도 않았으니까요. 더 자세히 살펴보고 다시 보고드리겠습니다. 첨부한 문서를 한번 훑어보시면 제가 이 문제를 혼자 해결하려고 얼마나 애썼는지 감을 잡을 수 있을 겁니다. 하지만… 솔직히 말씀드리면… DOM이 뭔지조차 모릅니다.
Zoho는 세로 방향의 뷰포트에서 일반적인 .mobile-view 클래스를 display: none으로 설정하는 반응형 CSS 규칙을 로드합니다. Discourse도 루트 <html> 요소에 mobile-view를 적용하므로, Zoho의 규칙이 의도치 않게 문서 전체를 숨기게 됩니다. 장치를 가로 방향으로 회전하면 뷰포트가 해당 브레이크포인트 범위에서 벗어나 사이트가 다시 표시됩니다.