qTranslate‑Xで言語別にcssを切り替える
WordPressのバージョンの3.9以降 多言語サイトにしてくれるプラグイン qTranslate が未対応になり、3.85のまま放置していたのですが、新プラグインqTranslate‑Xが出ているとしって思い切って現行バージョンにWordPressをあげてみたところ、真っ白になってしまいました(^^;
焦りましたが、原因は違うところにあったので、ひとまず表示ができてOKというところでしょうか?
しかし、qTranslate と qTranslate‑X はやはり違うようで、
qTranslate‑Xプラグイン
<?php if (qtrans_getLanguage() == 'en') { // English ver ?>
<link rel="stylesheet" href="<?php bloginfo('template_url'); ?>/css/en.css">
<?php } ?>
として、英語モードの時はen.cssを読み込むとしていたコードがエラー
<?php
if ($locale == en_US) { // English ver ?>
<link rel="stylesheet" href="<?php bloginfo('template_url'); ?>/css/en.css">
<?php } ?>
言語が”en_US”のときは、en.cssとして対応しました。
qTranslate‑Xのcssをphpに書き出さないメモ
cssを書き出したくないので
qtranslate_frontend.php のecho消してます。
function qtranxf_add_lang_icons_css ()
{
global $q_config;
$flag_location=qtranxf_flag_location();
//echo '<style type="text/css">'.PHP_EOL;
foreach($q_config['enabled_languages'] as $lang)
{
//echo '.qtranxs_flag_'.$lang.'
{background-image: url('.$flag_location.$q_config['flag'][$lang].');
background-repeat: no-repeat;}'.PHP_EOL;
}
do_action('qtranslate_head_add_css');
//echo '</style>'.PHP_EOL;
}
//add_filter('wp_head', 'qtranxf_add_lang_icons_css');