지난 몇 달간, 우리는 Discourse의 핵심 제품 일부인 환영 배너 기능을 개발해 왔습니다. 이 핵심 환영 배너 기능은 커뮤니티에 처음 방문하거나 다시 방문하는 사용자를 맞이하며, 사용자의 필요와 관심사에 맞는 콘텐츠를 쉽게 검색할 수 있도록 도와줍니다. 이 새로운 핵심 배너가 도입됨에 따라, 제품 제공 범위의 복잡성을 줄이고 모든 Discourse 사용자에게 핵심 기능의 지속적인 개선 혜택을 제공하기 위해 검색 배너 테마 컴포넌트를 비추천(deprecate) 처리합니다.
이 주제에서는 검색 배너 테마 컴포넌트의 기존 사용자에게 비추천 처리가 어떤 의미를 갖는지 설명하겠습니다.
호스팅 고객인 경우…
2025년 11월 20일부터 호스팅 고객을 검색 배너 컴포넌트에서 환영 배너 기능으로 마이그레이션하기 시작합니다. 현재 이 컴포넌트를 사용 중이시라면, 요금제 등급에 따른 정확한 일정 세부 정보가 포함된 메시지를 받으실 것입니다.
이 마이그레이션 과정에서 테마 컴포넌트를 위해 수정한 사이트 텍스트(예: search_banner.headline, search_banner.subhead, search_banner.search_button_text)와 show on, plugin outlet, background image 테마 컴포넌트 설정 값이 핵심 기능 설정으로 복사됩니다.
우리의 목표는 이 변경으로 인한 가시적인 영향을 최소화하여, 핵심 기능이 생성한 배너가 테마 컴포넌트가 생성한 배너와 동일한 외관을 갖도록 하는 것입니다. 배너에 이미지가 있는 커뮤니티에서는 배너에 표시되길 원하는 콘텐츠를 중앙에 배치하도록 이미지를 자르면, 배너에서 이미지의 위치가 약간 달라지는 문제를 해결할 수 있습니다.
이 마이그레이션 이후, 해당 테마 컴포넌트는 비활성화되며 테마 및 컴포넌트 페이지(/admin/config/customize/components)에서 안전하게 삭제할 수 있습니다.
셀프 호스팅 사용자인 경우…
2025년 12월 15일까지 테마 컴포넌트에서 핵심 기능으로 직접 마이그레이션할 계획을 세우시기 바랍니다. 이는 수동으로 수행하거나 우리가 제공하는 스크립트를 사용하여 수행할 수 있습니다.
수동 마이그레이션
다음은 검색 배너 테마 컴포넌트의 사이트 텍스트와 설정이 핵심 환영 배너의 동일한 기능과 어떻게 대응되는지에 대한 매핑입니다:
| 설정 설명 | 검색 배너 테마 컴포넌트 | 환영 배너 핵심 기능 |
|---|---|---|
| 환영 배너에 표시되는 제목 텍스트. | search_banner.headline 사이트 텍스트 |
js.welcome_banner.header.anonymous_members 및 js.welcome_banner.header.logged_in_members 사이트 텍스트 |
| 환영 배너에 표시되는 부제목 텍스트. | search_banner.subhead 사이트 텍스트 |
js.welcome_banner.subheader.anonymous_members 및 js.welcome_banner.subheader.logged_in_members 사이트 텍스트 |
| 배너의 검색 버튼에 사용되는 텍스트. * | search_banner.search_button_text 사이트 텍스트 |
js.welcome_banner.search_placeholder 사이트 텍스트 |
| 환영 배너가 표시되는 페이지를 결정하는 설정. | show on 테마 컴포넌트 설정 |
Welcome banner page visibility 사이트 설정 |
| 페이지에서 환영 배너가 나타나는 위치를 결정하는 설정. | plugin outlet 테마 컴포넌트 설정 |
Welcome banner location 사이트 설정 |
| 환영 배너에 사용되는 배경 이미지. | background image light 테마 컴포넌트 설정 |
Welcome banner image 사이트 설정 |
* 핵심 환영 배너 기능은 명시적인 검색 버튼을 지원하지 않으므로, 유사한 결과를 위해 이 텍스트를 사용자 지정 가능한 검색 필드 플레이스홀더 텍스트로 매핑하는 것을 권장합니다.
스크립트 마이그레이션
마이그레이션은 반드시 다음 순서대로 실행해야 하는 세 개의 rake 태스크로 구성됩니다:
- 컴포넌트 설정 마이그레이션:
themes:advanced_search_banner:1_migrate_settings_to_welcome_banner - 컴포넌트 번역 마이그레이션:
themes:advanced_search_banner:2_migrate_translations_to_welcome_banner - 핵심 배너 활성화, 컴포넌트 사용 테마에서 제외 및 컴포넌트 비활성화:
themes:advanced_search_banner:3_exclude_and_disable
컨테이너에서 실행할 파일 <random_name>.sh:
task_1.sh:
#!/bin/bash
cd /var/www/discourse && rake themes:advanced_search_banner:1_migrate_settings_to_welcome_banner
task_2.sh:
#!/bin/bash
cd /var/www/discourse && rake themes:advanced_search_banner:2_migrate_translations_to_welcome_banner
task_3.sh
#!/bin/bash
cd /var/www/discourse && rake themes:advanced_search_banner:3_exclude_and_disable
마이그레이션 과정을 더 잘 제어할 수 있도록 각 rake 태스크를 개별적으로 실행하는 것이 권장됩니다.
세 가지 태스크를 순차적으로 실행하기 위한 편의 태스크 themes:advanced_search_banner:migrate_all도 제공되지만, 사용 여부는 사용자의 재량에 맡깁니다.





