「多言語サイトの.htaccess」の版間の差分

提供: Geeklog Japan
移動先: 案内検索
 
1行目: 1行目:
 
== .htaccess ==
 
== .htaccess ==
  
 +
各ブラウザの言語を判断して、TOPページにアクセスしたときに、各言語のTOPページへ自動遷移させるためには、
 
.htaccessに、以下を追加します。
 
.htaccessに、以下を追加します。
  

2018年12月6日 (木) 17:14時点における最新版

.htaccess[編集]

各ブラウザの言語を判断して、TOPページにアクセスしたときに、各言語のTOPページへ自動遷移させるためには、 .htaccessに、以下を追加します。

# / をブラウザがen zh ko tw ならそのTOPへ。それ以外はja 
RewriteCond %{REQUEST_URI} ^/$
RewriteCond %{REQUEST_URI} !(index\.php)
RewriteCond %{HTTP:Accept-Language} ^en [NC]
RewriteRule .* /index.php/topic/home_en [R=301,L]
RewriteCond %{REQUEST_URI} ^/$
RewriteCond %{REQUEST_URI} !(index\.php)
RewriteCond %{HTTP:Accept-Language} ^tw [NC]
RewriteRule .* /index.php/topic/home_tw [R=301,L]
RewriteCond %{REQUEST_URI} ^/$
RewriteCond %{REQUEST_URI} !(index\.php)
RewriteCond %{HTTP:Accept-Language} ^zh [NC]
RewriteRule .* /index.php/topic/home_zh [R=301,L]
RewriteCond %{REQUEST_URI} ^/$
RewriteCond %{REQUEST_URI} !(index\.php)
RewriteCond %{HTTP:Accept-Language} ^ko [NC]
RewriteRule .* /index.php/topic/home_ko [R=301,L]
RewriteCond %{REQUEST_URI} ^/$
RewriteCond %{REQUEST_URI} !(index\.php)
RewriteRule .* /index.php/topic/home_ja [R=301,L]

言語TOPページ用に、話題(TOPIC)を言語ごとに作成[編集]

なお、それぞれ言語別に話題を作成。話題IDは、言語IDとします。

hreflangをヘッダに追加[編集]

さらに、Assistプラグインをインストールして、 templates/headercode/topictop.thtml に、以下を追加します。

<link rel="alternate" href="{site_url}/index.php/topic/home_ja" hreflang="ja" />
<link rel="alternate" href="{site_url}/index.php/topic/home_en" hreflang="en" />
<link rel="alternate" href="{site_url}/index.php/topic/home_ko" hreflang="ko" />
<link rel="alternate" href="{site_url}/index.php/topic/home_zh" hreflang="zh" />
<link rel="alternate" href="{site_url}/index.php/topic/home_tw" hreflang="tw" />
<link rel="alternate" href="{site_url}/" hreflang="x-default" />