네, 저도 이것이 Chrome에서 정확히 어떻게 작동하는지 이해가 안 됩니다. 쿠키만 지우면 계속 무시된 상태로 유지되지만, 브라우저 전체 이력을 지우면 다시 표시됩니다.
네, 방금 제가 직접 무시한 게 아니라는 걸 깨달았습니다. 하지만 적어도 두 분 모두에게서 답변을 받을 수 있었고, 다른 사람들을 위해 그 답변이 남아 있다는 점이 다행입니다.
게시물을 고정하는 것보다는 낫죠, 확실히요.
브라우저는 때로 이해하기 어려운 부분이 있습니다. Chrome의 시크릿 탭에서 배너를 닫고 다시 로그인한 후 배너가 표시되지 않았습니다.
각 새로고침 시 쿠키가 삭제되어야 하는데, @manuel 님이 언급했듯이 브라우저 히스토리 캐시에 저장되는 것 같습니다. Chrome의 시크릿 브라우저를 완전히 닫고 새로 열어야만 비로소 배너가 다시 나타났습니다.
이 문제는 이전에 전역 배너에서도 발생했던 것 같습니다. 기억이 정확하다면, 팀이 해당 문제를 수정했을 것입니다. 이전에는 한 번 삭제된 후에는 해당 사용자에게 전역 배너가 전혀 표시되지 않는 문제가 있었습니다.
이 컴포넌트를 설치했는데, 미리보기(PREVIEW)에서는 배너가 헤더 위에 표시되지만 실제 사이트에서는 헤더 아래에 표시됩니다. 테스트한 모든 브라우저(Brave, Edge, Safari)에서 동일한 문제가 발생합니다.
plugin_outlet 설정이 above-site-header로 되어 있나요? 아니면 Horizon 테마와 관련이 있는 것일까요
.
FKB Pro 테마를 사용하고 있습니다. plugin_outlet은 올바르게 설정되어 있지만, 이는 무관합니다. above-site-header로 설정하든 below-site-header로 설정하든 미리보기는 정상적으로 작동합니다(첫 번째 예시). 하지만 실제 사이트에서는 사이트 헤더 아래에만 공지사항이 표시됩니다(두 번째 예시).
컴포넌트에 몇 가지 업데이트를 적용했습니다. 원본 게시물도 이미 수정해 두었지만, 변경 사항을 좀 더 자세히 설명드리겠습니다:
로컬라이즈된 문자열
바 텍스트와 버튼 라벨이 이제 번역 가능합니다. 기존 bar_text와 button_text 설정 대신, 문자열은 locales/en.yml에 저장됩니다. 추가 로케일은 수동으로 추가하거나 AI 번역을 활용할 수 있습니다.
더 간단한 닫기 로직
쿠키 기반의 닫기 기능을 localStorage로 대체했습니다. 키는 바 텍스트 자체에서 파생되므로, 공지 텍스트를 업데이트하면 이전 텍스트를 닫았던 사용자에게 바가 자동으로 다시 표시됩니다.
반응형 레이아웃
스타일을 flex-wrap을 사용하여 단일 파일로 통합했습니다. 넓은 화면에서는 텍스트와 버튼이 인라인으로 나란히 배치되고, 텍스트가 줄바꿈되면 버튼이 아래로 이동합니다.
BEM 요소 클래스
마크업이 이제 모든 요소에 BEM 클래스(__text, __button, __close)를 사용하므로, 테마 오버라이드에서 특정 요소를 지정하기가 더 쉬워졌습니다.


