ブラウザで設定されている言語をもとに、Wordpressの表示言語を振り分けたいと思っています。よいやり方かどうかわからないのですが、下記コード(wp-blog-header.phpに記述)のように、ブラウザ言語を取得して、wp-optionsテーブルの該当箇所を、アクセスがある度に、その都度、更新することで、対応しています。これによりWordpressの言語表示は切り替わりますが、ただ問題がありまして、例えば、ブラウザの言語が英語のブラウザで観覧した後に、ブラウザの言語が日本語のブラウザで観覧すると、まずは始めにアクセスした時には、英語になってしまいます。そして、リロード又は、サイトの違うページに移動すると、日本語になります。つまり、言語が初回のアクセスで言語が切り替わりません。どのように対処すればよいのかが分かりませんので、もし分かりましたら、ご教示ください。よろしく願いします。
$languages = explode(',', $_SERVER['HTTP_ACCEPT_LANGUAGE']); $language = current($languages); $result = ''; if (preg_match('/^en/i', $language)) { $result = 'en'; } elseif (preg_match('/^ja/i', $language)) { $result = 'ja'; } $wpdb->UPDATE($wpdb->options, array('option_value' => $result ), array( 'option_name' => 'WPLANG') ) ;
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/12/06 02:01