자동 사이트맵 링크

:information_source: 요약 사이트맵을 가져와서 '주시하는 단어(Watched Words)'와 유사한 방식으로 페이지 제목을 포럼 링크에 자동으로 매핑할 수 있게 해 줍니다.
:hammer_and_wrench: 저장소 링크 GitHub - multidimension-al/discourse-sitemap-autolink: Turn sitemaps into automatic links in discourse. · GitHub
:open_book: 설치 가이드 Discourse에 플러그인 설치 방법

기능

이것은 ‘주시하는 단어(Watched Words)’ 기능을 사용하는 대안입니다. 외부 웹사이트의 사이트맵을 가져와서 단어를 자동으로 매칭하도록 지정하고, 다음 재베이킹(rebake) 시 이를 링크합니다. 주시하는 단어와 매우 유사하지만, 사이트맵을 가져오고 키워드를 추출하는 단계를 추가합니다.

예를 들어, 별도의 위키 섹션이 있는 기술 포럼이나 뉴스 또는 이커머스 스토어가 연결된 포럼에 적합합니다.

위키 사이트맵을 가져옵니다:

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url><loc>https://www.example.com/wiki/soldering-iron-maintenance</loc><lastmod>2026-07-02</lastmod></url>
  <url><loc>https://www.example.com/wiki/mosfet-driver-board</loc><lastmod>2026-07-05</lastmod></url>
  <url><loc>https://www.example.com/wiki/li-ion-battery-pack</loc><lastmod>2026-07-11</lastmod></url>
  <url><loc>https://www.example.com/wiki/pcb-etching</loc><lastmod>2026-07-19</lastmod></url>
  <url><loc>https://www.example.com/wiki/flux</loc><lastmod>2026-07-23</lastmod></url>
</urlset>

플러그인은 사이트맵을 다운로드하고 페이지에서 제목을 가져온 후 매칭할 단어를 생성합니다. 이러한 단어는 해당 단어가 포함된 게시글이 다음에 베이킹될 때 자동으로 링크되거나, 플러그인이 해당 게시글을 찾아 자동으로 재베이킹합니다.

가져온 <title> 저장된 제목
Soldering Iron Maintenance - Example Wiki Soldering Iron Maintenance
MOSFET Driver Board - Example Wiki MOSFET Driver Board
Li-Ion Battery Pack - Example Wiki Li-Ion Battery Pack
PCB Etching - Example Wiki PCB Etching
Flux - Example Wiki Flux

각 제목은 안전 장치를 갖춘 매칭 구문이 됩니다.

저장된 제목 생성된 구문 상태
Soldering Iron Maintenance soldering iron maintenance(s) 활성
MOSFET Driver Board mosfet driver board(s) 활성
Li-Ion Battery Pack li-ion battery pack(s) 활성
PCB Etching pcb etching(s) 활성
Flux flux, fluxes 검토 대기 — 짧고, 단일 단어

그 후 구문과 일치하는 내용이 포함된 게시글에는 사용자의 사이트 위키로 돌아가는 링크가 자동으로 추가되며, 게시글당 최대 1회까지 가능합니다.

예를 들어 다음과 같은 게시글이 있다고 가정해 보겠습니다:

I was reading the Soldering Iron Maintenance page and noticed a problem with what it said…

'Soldering Iron Maintenance’라는 단어는 사이트맵과 연결된 해당 페이지로 링크됩니다.

설정

설치 후에는 다양한 설정을 구성할 수 있으며, 가져온 사이트맵과 함께 매칭될 구문 목록 및 URL을 표시하는 전용 카탈로그 페이지도 있습니다.

가져오기를 계획 중인 사이트맵 XML 파일을 찾아 Discourse 설치 환경에서 해당 서버에 제한 없이 연결할 수 있는지 확인하세요. 공통 사이트 접두사나 접미사를 찾아 원하지 않는 필드 부분을 Sitemap autolink title suffixes에 설정합니다. 예를 들어, 해당 페이지 제목이 매칭되지 않도록 하려면 "- Discourse Meta"와 같은 값을 설정할 수 있습니다. 또한 사이트에 자주 나타날 수 있는 특정 공통 단어를 건너뛰도록 지정할 수도 있습니다. 대부분의 설정은 활성화할 필요가 없지만, 사이트맵 확인에 허용되는 시간, URL 간 지연 시간, 타이밍 및 지연을 조정할 수 있게 해 줍니다.

URL이 가져와지면 lastmod 시간이 저장되며, lastmod 필드가 변경되지 않는 한 다시 확인하지 않습니다. 매칭 구문을 수동으로 지정하거나 삭제할 수 있으며, 단일 단어 매칭에 대해서는 자동으로 확인을 요청합니다.

설정 항목

링크 설정

설정 기본값 목적
sitemap_autolink_enabled off 마스터 스위치.
sitemap_autolink_max_links_per_destination_per_post 1 게시글당 각 대상이 링크될 수 있는 횟수 (첫 언급이 우선). 0 = 무제한.
sitemap_autolink_max_links_per_post 0 게시글당 자동 링크 총 수. 0 = 무제한.
sitemap_autolink_skip_quotes on 인용된 자료 내부에는 절대 링크하지 않음.
sitemap_autolink_include_private_messages off 개인 메시지도 링크함.
sitemap_autolink_excluded_categories 이 카테고리(하위 카테고리 포함)에서는 절대 링크하지 않음.
sitemap_autolink_enabled_types – (전체) 링크할 수 있는 콘텐츠 유형 제한.
sitemap_autolink_type_priority manual 충돌 시 우선순위 순서, 가장 강한 것부터; 목록에 없는 유형은 마지막 순위.

카탈로그 및 구문

설정 기본값 목적
sitemap_autolink_sources 가져올 사이트맵, 항목당 하나: https://example.com/sitemap.xml,content_type. 인덱스는 자동으로 확장됩니다.
sitemap_autolink_manual_mappings 수동 구문,URL,유형 규칙. 상대 URL은 포럼에 대해 해석됩니다.
sitemap_autolink_min_phrase_length 5 더 짧은 생성 구문은 검토로 이동.
sitemap_autolink_min_phrase_words 2 단어가 더 적은 생성 구문은 검토로 이동 (문자+숫자 모델 번호 토큰은 예외).
sitemap_autolink_generate_plurals on 간단한 복수형 변형도 생성.
sitemap_autolink_title_suffixes 가져온 제목 끝에서 제거되는 보일러플레이트. 항목에는 ` 포함 불가
sitemap_autolink_excluded_url_patterns 일치하는 사이트맵 URL은 절대 가져오지 않음 (부분 문자열 또는 * 와일드카드, 예: */checkout*).
sitemap_autolink_excluded_terms 절대 자동 생성되면 안 되는 정확한 구문. 수동 별칭이 우선합니다.

동기화

설정 기본값 목적
sitemap_autolink_sync_enabled off 일일 사이트맵→카탈로그 작업 실행.
sitemap_autolink_page_fetch_delay_ms 500 제목 가져오기 간 예의 지연 (새/변경된 URL만).
sitemap_autolink_sync_time_budget_minutes 30 실행당 최대 분; 실행은 **부분적(Partial)**으로 깔끔하게 중단되고 다음 실행에서 남은 작업을 재개합니다.
sitemap_autolink_fetch_host_rewrites 내부 대상을 통해 공개 호스트를 가져오기 (아래 참조).

재베이킹

설정 기본값 목적
sitemap_autolink_auto_rebake_on_changes off 동기화 후 구문 변경으로 인해 영향을 받을 가능성이 있는 게시글을 재베이킹 — 동기화당 배치된 백그라운드 작업 1회.
sitemap_autolink_auto_rebake_max_phrases 50 한 번의 동기화에서 이보다 더 많은 구문이 변경되면 자동 재베이킹을 완전히 건너뜀 (초기 가져오기가 포럼 전체에 가까운 재베이킹을 트리거하지 않도록).
sitemap_autolink_auto_rebake_max_posts 500 한 번의 동기화 재베이킹 웨이브가 터치할 수 있는 최대 게시글 수.
sitemap_autolink_max_rebakes_per_job_run 200 작업 실행당 배치 크기; 더 큰 웨이브는 1분 간격의 후속 작업으로 계속됩니다.

분석

설정 기본값 목적
sitemap_autolink_analytics_enabled on 생성된 링크가 클릭될 때 internal_auto_link_click 이벤트를 gtag 또는 dataLayer를 통해 Google Analytics로 전송. 둘 다 없으면 아무 작업도 수행하지 않음.

저는 이 플러그인을 사용해서 메인 웹사이트와 Discourse 포럼을 연결하는 데 도움을 줍니다. 이렇게 하면 위키나 스토어의 주제가 자동으로 링크를 생성할 수 있습니다.

누군가가 특정 제품에 대해 이야기할 때, 사용자가 지정한 키워드나 제품 이름 자체를 언급하기만 하면 베이킹 시점에 링크가 자동으로 추가됩니다.

마찬가지로, 위키 사이트가 있다면 위키 페이지 제목을 가져와서 자동으로 링크할 수 있습니다. 예를 들어 역사 사이트가 있고 누군가가 'The War of 1812’를 언급했는데, 이것이 동일한 이름의 위키 기사와 일치한다면 자동으로 링크됩니다.

즐겁게 사용하시길 바랍니다!

1개의 좋아요