hreflang 은 "이 페이지에는 이러한 언어(및 지역)를 위한 다른 버전이 있습니다"라고 검색 엔진에 전달하기 위한 속성입니다. 일본어 회사 소개 페이지에 영어 버전과 중국어 버전이 있을 때, Google은 hreflang을 보고 영어로 검색한 사람에게는 영어 버전을, 중국어로 검색한 사람에게는 중국어 버전을 표시합니다. 설정하지 않아도 각 언어 페이지는 개별적으로 색인되지만, 설정하면 '같은 페이지의 다른 언어 버전'으로 취급되어 적절한 언어 버전이 검색 결과에 표시되기 쉬워지고, 중복 콘텐츠에 대한 우려도 사라집니다.
작성 방법(HTML의 head에 넣기)
각 페이지의 <head> 에 자기 자신을 포함한 모든 언어 버전을 나열합니다. 일본어 사이트 example.co.jp 에 영어·간체 중국어·한국어 버전을 global.example.co.jp 으로 제공하는 예시입니다.
<link rel="alternate" hreflang="ja" href="https://example.co.jp/company/">
<link rel="alternate" hreflang="en" href="https://global.example.co.jp/en/company/">
<link rel="alternate" hreflang="zh-Hans" href="https://global.example.co.jp/zh-Hans/company/">
<link rel="alternate" hreflang="ko" href="https://global.example.co.jp/ko/company/">
<link rel="alternate" hreflang="x-default" href="https://example.co.jp/company/">
- 언어 코드는 ISO 639-1(
en、ja、ko). 중국어는 문자 체계로 구분하는 것이 일반적이며, 간체는zh-Hans번체는zh-Hant지역을 붙이려면en-US、zh-TW와 같이 작성합니다. - x-default는 '어느 언어에도 해당하지 않는 방문자에게 표시할 페이지'입니다. 일본어가 원문이라면 일본어 페이지를 지정하는 것이 자연스럽습니다. 언어 선택 페이지가 있다면 그것도 괜찮습니다.
- 상호 참조가 필수입니다. 영어 페이지에서는 일본어 페이지를, 일본어 페이지에서는 영어 페이지를 각각 가리키지 않으면 무효가 됩니다.
- URL은 절대 URL로, 실제로 200을 반환하는 페이지를 지정합니다. 리디렉션되는 URL이나 noindex 페이지를 가리키면 무시됩니다.
사이트맵에서 지정하는 방법
HTML을 편집할 수 없는 경우에는 XML 사이트맵에 같은 정보를 작성할 수 있습니다. 각 URL에 모든 언어 버전을 xhtml:link 로 나열합니다.
<url>
<loc>https://global.example.co.jp/en/company/</loc>
<xhtml:link rel="alternate" hreflang="ja" href="https://example.co.jp/company/"/>
<xhtml:link rel="alternate" hreflang="en" href="https://global.example.co.jp/en/company/"/>
<xhtml:link rel="alternate" hreflang="ko" href="https://global.example.co.jp/ko/company/"/>
<xhtml:link rel="alternate" hreflang="x-default" href="https://example.co.jp/company/"/>
</url>
사이트맵은 다른 호스트에 있더라도 robots.txt에서 참조되어 있으면 인정됩니다.example.co.jp/robots.txt 에 Sitemap: https://global.example.co.jp/sitemap.xml 라고 작성하는 방법입니다.
canonical과의 관계
rel="canonical" 은 '이 페이지의 정식 URL은 이것'이라는 선언으로, 각 언어 페이지는 자기 자신을 canonical로 지정합니다. 영어 페이지의 canonical을 일본어 페이지로 지정하면 '영어 페이지는 일본어 페이지의 중복'이라고 말하는 셈이 되어, 영어 페이지가 색인에서 제외됩니다. hreflang은 언어 버전끼리를 연결하고, canonical은 각 언어 버전 안에서 정식 URL을 정한다고 기억해 두세요.
자주 하는 실수
| 단방향 지정 | 일본어 페이지에만 hreflang을 작성하고 영어 페이지에는 작성하지 않는다. 상호 참조가 없기 때문에 무시된다. |
|---|---|
| 언어 코드 오류 | jp(올바른 코드는 ja)、cn(올바른 코드는 zh-Hans 또는 zh-CN)、en-UK(올바른 코드는 en-GB)。 |
| canonical을 원문으로 지정 | 번역 페이지가 중복으로 처리되어 검색 결과에서 사라진다. |
| 번역하지 않은 페이지를 지정 | 영어 버전이 존재하지 않는 URL을 hreflang="en"으로 지정하면 오류가 발생한다. 언어 버전이 있는 페이지에만 작성한다. |
| JavaScript로 나중에 삽입 | 크롤러가 렌더링 전에 읽을 수 있다. 서버에서 반환하는 HTML에 포함하거나 사이트맵에서 지정한다. |
설정 여부 확인
Google Search Console의 '국제 타겟팅'은 폐지되었기 때문에, 현재는 URL 검사로 각 언어 페이지가 색인되어 있는지 확인하는 것이 확실합니다. 몇 주 후 '검색 실적'을 국가별로 보면 어떤 언어 버전이 어느 국가에서 표시되고 있는지 알 수 있습니다.
Sotomuke의 경우
Sotomuke가 제공하는 번역 페이지에는 언어별 URL, 자기 자신에 대한 canonical, 모든 언어 버전의 hreflang, x-default가 서버 측에서 자동으로 삽입되며, 사이트맵에도 같은 정보가 포함됩니다. 원래 일본어 사이트 측에 hreflang을 넣을 수 있는 경우에는 원본 사이트에서 번역 페이지로 링크하기의 절차에 따라 원문 페이지를 포함한 그룹으로 Google에 전달할 수 있습니다.
Sotomuke로 체험하기
일본어 사이트의 URL을 붙여넣기만 하면 홈페이지를 번역한 미리보기를 무료로 만들어 드립니다. CMS 수정이나 태그 설치는 필요 없습니다. 공개는 월 ¥4,980부터, 최소 계약 기간 없음.
