hreflang 생성기
번역된 URL만으로 완전한 hreflang 링크 클러스터 — 언어별 링크와 x-default — 를 일관되고 쌍방향으로 만들어 줍니다. 설치도 가입도 필요 없습니다.
hreflang cluster
Checklist
- Return the complete cluster on every page in the set — hreflang is bidirectional and must include a self-reference.
- All URLs must be absolute and fully qualified.
- x-default is for users whose language matches none of the versions: a language selector or the default-language homepage.
- Prefer zh-Hans / zh-Hant over bare zh; add a region subtag like pt-BR only when the content truly differs by region.
- Pair each hreflang page with its own self-referencing canonical — hreflang does not replace canonical.
이 도구는 전부 브라우저 안에서 실행됩니다. 데이터는 기기를 떠나지 않으며 어떤 서버로도 업로드되지 않습니다.
사용 방법
- 1번역 버전마다 절대 URL을 붙여 넣고 없는 언어는 비워 두기.
- 2x-default URL을 설정하기 — 언어 선택 페이지 또는 기본 홈페이지.
- 3클러스터를 세트의 모든 페이지 <head>에 복사하기.
hreflang 생성기
hreflang은 각 언어 사용자에게 어떤 URL을 보여 줄지 검색 엔진에 알려 거의 같은 번역들이 서로 경쟁하지 않게 합니다. 클러스터는 쌍방향입니다. 모든 현지화 페이지가 자기 자신을 포함한 전체 세트를 돌려주어야 합니다.
언어별 버전의 URL을 입력하면 생성기가 전체 <link rel="alternate"> 클러스터와 x-default를 만들어 줍니다. x-default는 언어 선택 페이지나 기본 언어 홈페이지를 가리키면 됩니다.
자주 묻는 질문
모든 페이지에 hreflang 세트 전체가 필요한가요?
네. 클러스터는 쌍방향이어야 합니다. 페이지 A가 B와 자신을, B가 A와 자신을 나열합니다. 구성원이 빠진 클러스터는 부분적으로 무시되어 수고가 물거품이 됩니다.
zh와 zh-Hans 중 무엇을 쓰죠?
간체는 zh-Hans, 번체는 zh-Hant를 권합니다. zh만 쓰면 문자가 정의되지 않습니다. pt-BR 같은 지역 서브태그는 선택입니다 — 언어를 먼저 겨냥하고, 콘텐츠가 정말 다를 때만 지역을 더하세요(pt-BR vs pt-PT처럼).
hreflang이 캐노니컬 태그를 대체하나요?
아니요. 각 언어 버전에는 자기 자신을 가리키는 캐노니컬이 여전히 필요합니다. hreflang은 번역 페이지들 사이에서 고르고, 캐노니컬은 한 언어 안의 중복을 정리합니다.
관련 도구
캐노니컬 태그 생성기
정확한 rel=canonical 링크 태그를 만들고, 검색 엔진이 원하는 버전 하나만 인덱스하도록 URL을 정규화하는 방법까지 안내합니다. 설치도 가입도 필요 없습니다.
전체 도구 →
XML 사이트맵 생성기
URL 목록을 붙여 넣으면 lastmod와 섹션별 changefreq·priority가 들어간 유효한 sitemap.xml을 — 중복 제거까지 해서 — 만들어 줍니다.
전체 도구 →
메타 태그 생성기
title, description, keywords, robots, viewport 메타 태그를 실시간 HTML 출력으로 만들어 <head>에 바로 붙일 수 있게 해 줍니다.
전체 도구 →
도구 삽입
한 줄로 사이트에 도구를 넣으세요. 방문자의 브라우저에서 실행됩니다.
<iframe src="https://zoyku.com/ko/tools/hreflang-generator?embed=1" width="100%" height="640" style="border:0;border-radius:16px" title="Zoyku — hreflang-generator" loading="lazy"></iframe>