정보 페이지 사용자 지정 기능이 구버전 js.about.contact_info 텍스트와 충돌하는 문제

최신 Discourse Version 3.4.0.beta3-dev (d853b5384b) 버전으로 업데이트한 후 새로운 커스텀 소개 페이지(Customize About Page) 기능에서 문제가 발생하고 있습니다. 오늘 기준 더 이상의 업데이트가 없음을 확인했습니다. 주요 문제는 다음과 같습니다:

문제 상세:

  1. 혼합된 콘텐츠(Mixed Content): 새로운 커스텀 기능을 사용하여 소개 페이지를 업데이트하려고 하면, 새 콘텐츠가 기존 js.about.contact_info 텍스트를 완전히 대체하지 않습니다. 대신 기존 텍스트와 병합되어 소개 페이지에 구식과 신규 텍스트가 뒤섞인 형태로 표시됩니다.
  2. 사이트 텍스트 편집: /admin/customize/site_texts?overridden=true&q= 에서 오버라이드된 사이트 텍스트를 편집할 수 없습니다. 해당 페이지에 접근을 시도하면 “문제가 발생했습니다(Something went wrong)”라는 오류 페이지가 표시됩니다.
  3. 개발자 콘솔 오류:
    • TypeError: admin-site-text-edit.js:19:1에서 “Cannot read properties of null (reading ‘find’)” 오류가 발생합니다.
    • OneSignal SDK 오류: ExecutorBase.js:89에서 updateSubscription: subscriptionId is not defined 오류가 반복적으로 발생합니다. 이는 해당 문제와 관련이 있을 수도 있고 없을 수도 있습니다.

수행한 조치:

  • 사용 가능한 최신 버전(3.4.0.beta3-dev d853b5384b)으로 업데이트했습니다.
  • 브라우저를 새로고침하고 캐시를 삭제했습니다.
  • 개발자 콘솔에서 오류를 확인했습니다(상세 내용은 위와 같습니다).
  • 개인정보 보호 사유로 웹사이트 URL을 공유할 수 없습니다.

도움 요청:

이전에 커스텀된 js.about.contact_info 텍스트의 간섭 없이 새로운 커스텀 소개 페이지 기능을 완전히 활용할 수 있는 방법이 있을까요? 또한 오버라이드된 사이트 텍스트에 접근을 막고 있는 오류에 대한 수정 방법이나 우회책이 있는지 알고 싶습니다.

이 문제에 대한 도움을 주시면 감사하겠습니다!

문제를 이해하고 재현하는 데 조금 어려움을 겪고 있습니다. 이전에 js.about.contact_info 텍스트를 이미 변경해 두었다가, 업데이트 후 해당 텍스트를 다시 업데이트하려고 하면 오류가 발생한다는 말씀이신가요?

오류 메시지가 페이지에 표시될 때 더 자세한 정보가 표시되는지 웹 브라우저의 개발자 콘솔을 확인해 주시겠어요?

@tobiaseigen @Reezy

네, 이전에 js.about.contact_info 텍스트를 수정한 적이 있습니다. 최근 업데이트 이후에 About 페이지에 새 내용으로 커스터마이징을 시도하면, 기존 js.about.contact_info 텍스트가 완전히 덮어써지지 않는다는 것을 발견했습니다. 대신, 기존 텍스트가 여전히 남아 있고 새 내용과 섞여 표시 문제가 발생합니다.

또한, 인터페이스에서 구체적인 오류 메시지는 표시되지 않습니다. 그러나 /admin/customize/site_texts?overridden=true&q= 에서 덮어쓰기된 텍스트를 편집하려고 하면 오류 페이지(“무언가 잘못되었습니다”)가 표시됩니다. 개발자 콘솔을 확인했고, 다음과 같은 내용을 관찰했습니다:

Chrome 개발자 콘솔을 확인했고, 다음을 발견했습니다:

  • TypeError: admin-site-text-edit.js:19:1에서 “Cannot read properties of null (reading ‘find’)” 오류가 표시됩니다. 이는 site_texts에 접근할 때 setupController 함수에 문제가 있음을 시사하는 것 같습니다.

이 문제는 About 섹션에서 새 커스터마이징 기능이 기존 텍스트를 완전히 대체하는 것을 방해하는 것 같습니다. 콘솔에서 캡처하길 원하시는 구체적인 세부 사항이 있거나, 이 문제를 해결하는 데 도움이 될 다른 정보가 필요하시면 알려주세요!

네, 감사합니다! 해당 부분을 확인해 보고 버그가 있는지 살펴볼게요.

소개 페이지의 “문의하기” 섹션에 영향을 미치는 두 개의 사이트 텍스트가 있습니다. 이 텍스트들을 수정해 보실 수 있습니다. 또한 js.about.report_inappropriate_content 사이트 텍스트도 있습니다.

가이드를 주셔서 감사합니다, Tobias님.

다른 js.about 사이트 텍스트에 대해 인지하고 있습니다. 다만, 제 주요 문제는 새로운 커스터마이즈 About 페이지 기능을 사용하는 데 있습니다. 이전에 /admin/customize/site_texts에서 수정된 js.about.contact_info 텍스트 때문에 연락처 정보를 완전히 업데이트할 수 없습니다.

새로운 커스터마이즈 기능을 사용해 Contact 섹션을 업데이트하려고 하면, 새 텍스트가 기존 js.about.contact_info 내용을 대체하지 않습니다. 대신 기존 텍스트와 혼합되어 About 페이지에서 내용이 뒤섞인 상태로 표시됩니다.

새로운 커스터마이즈 About 페이지 기능을 온전히 활용할 수 있도록 이 문제를 해결하는 데 도움이 되는 조언을 주시면 감사하겠습니다. 감사합니다!

상세한 보고 감사합니다! 모든 내용을 같은 주제(토픽)로 옮겼습니다.

불행히도 아직 재현이 되지 않습니다. 업데이트 전이어서 사이트 텍스트를 커스터마이즈할 수 있었던 사이트에서도 마찬가지입니다.

안전 모드에서 위의 단계를 시도해 보시고, 그래도 문제가 발생하는지 확인해 주시겠어요? 브라우저 플러그인 충돌 가능성을 고려해 다른 웹 브라우저에서도 시도해 보실 수 있습니다.

이 문제에 대한 스크린샷을 제공해 주시겠습니까? 문제 파악에 큰 도움이 될 것입니다.

@tobiaseigen, @Osama 님,

제안해 주셔서 감사합니다. 지금까지 시도해 본 내용은 다음과 같습니다:

  1. 안전 모드: 안전 모드를 활성화했지만 동일한 문제가 발생했습니다. 또한 Chrome의 게스트 모드, 새 프로필, 그리고 어떤 플러그인도 설치되지 않은 스마트폰에서도 테스트해 보았으나 변화가 없었습니다.

  2. 주요 우려 사항 - 소개 페이지 커스터마이징 문제:

    • 소개 페이지(website.com/about)에서 이 페이지 편집 기능을 사용하여 “문의하기” 섹션을 업데이트하려고 하면, 연락처 정보 섹션(website.com/admin/config/about)에 추가한 정보가 표시되지 않습니다.
    • 구체적으로, 연락처 정보 섹션의 커뮤니티 소유자, 연락처 이메일, 연락처 URL 등의 필드가 소개 페이지의 “문의하기” 열에 표시되지 않습니다. 대신, 이전의 js.about.contact_info 텍스트와 새로운 입력값이 혼합되어 엉망이 된 결과가 표시됩니다.
  3. 부차적 우려 사항 - 사이트 텍스트 편집 오류:

    • /admin/customize/site_texts?q= 경로를 통해 텍스트에 접근하여 편집하려고 하면 오류 페이지(“무언가 잘못되었습니다”)가 표시됩니다.
    • 이전에 여기서 일부 텍스트를 커스터마이징했지만, 이제 더 이상 편집할 수 없습니다. 스크린샷과 GIF에서 볼 수 있듯이, 과거에 만든 커스터마이징이 현재 설정과 잠재적으로 충돌하고 있는 것으로 보입니다.

관찰 결과 요약:
연락처 정보(website.com/admin/config/about)와 site_texts(website.com/admin/customize/site_texts?q=) 설정이 충돌하는 것으로 보입니다. 이 충돌로 인해 소개 페이지의 “문의하기” 섹션에서 의도된 새로운 소개 페이지 커스터마이징 기능의 업데이트가 표시되지 않고, 혼합된 콘텐츠가 표시되고 있습니다.

추가적인 통찰력이나 해결책을 주시면 감사하겠습니다!

게시하신 스크린샷에서 “엉망진창”인 부분을 찾지 못하겠습니다. 어떤 문제가 있는지 파악할 수 있도록, 여러분이 보고 계신 “엉망진창”인 결과물의 스크린샷이 필요합니다.

브라우저 콘솔이나 /logs에서 오류를 확인하고 계신가요?

뒤섞인 부분에 내 클라이언트의 웹사이트 URL이 표시되어 있어 공개할 수 없습니다.

저는 개발자가 아닙니다…



죄송합니다. 문제가 점점 복잡해지고 있네요!

사이트의 지역 설정이 en_uk로 되어 있나요? en_us로 변경해 보고 문제가 해결되는지 확인해 보실 수 있을까요?

js.about.contact_info 사이트 텍스트의 내용은 무엇인가요? 비어 있는 것으로 보이지만, 제 사이트에서 해당 필드를 비워 보려 하면 검증 오류가 발생합니다.

변경할 수 없습니다. 드롭다운 메뉴가 표시되지 않습니다.

website.com/admin/site_settings/category/required?filter=locale

비어 있지 않습니다. 내용이 있습니다. 내 클라이언트가 내용을 변경한 후 다시 시도 오류 때문에 이제 편집할 수 없습니다.

콘솔의 오류 페이지에 이렇게 표시됩니다.

로케일 설정에 분명히 이상한 일이 일어나고 있습니다. en_us와 en_uk가 옵션으로 사용 가능해야 합니다. en은 Discourse에서 옵션이 아닙니다.

다음 세 가지 설정은 어떻게 되어 있나요?

allow user locale을 활성화했다면, 사용자 설정에서 로케일은 어떻게 되어 있나요? 문제를 좁혀 내려면 해당 설정을 비활성화해 보는 것도 좋습니다.

코어 Discourse에서 기본 로케일 옵션을 수정했다면, 여러분을 지원하기가 어려울 것입니다.

@TheBaby5 님, 사이트에서 무언가가 심각하게 깨져 있습니다 — 사이트의 사용 가능한 로케일 목록이 null 상태이며 이로 인해 많은 문제가 발생하고 있습니다. 지원되는 설치 환경에서 실행 중이신가요? 비공식 플러그인을 사용 중이신가요?

/u/user/preferences/interface 경로에서 사용할 수 있는 옵션이 없습니다.


네, 맞습니다! 이제 어떻게 해야 하나요? :fearful:

,


이것인가요?

제가 말한 건: 공식 설치 가이드를 사용하여 사이트를 설정했나요?

여기서 문제는 다국어 플러그인일 가능성이 높습니다. 플러그인을 제거해 보고 로케일 문제가 해결되는지 확인해 보세요.

네, 공식적으로 설치했습니다.

현재 비활성화되어 있습니다. 내일 Putty를 사용하여 플러그인 git 라인을 제거하고 여기에서 알려드리겠습니다.

이제 약간 주제에서 벗어났지만, app.yml에서 로케일이 설정되어 있다면 이것이 사실인가요?

문제가 해결되었습니다. 정말 감사합니다! 다국어 플러그인이 원인이었네요. 그냥 삭제하니 모든 것이 정상으로 돌아왔습니다.