【发布时间】:2020-06-12 09:54:30
【问题描述】:
我的 woocommerce 网站面向多语言用户,我需要允许访问者选择自己的语言。
如果选择,语言设置将被保存到 php 会话中。
// LOCALE LANGUAGE
function my_lang(){
session_start();
if (isset ($_GET['lang']) ){
$_SESSION['lang'] = $_GET['lang'];
}
$lang=$_SESSION['lang'];
if ($lang == 'en_US'){
switch_to_locale('en_US');
$_SESSION['lang'] = 'en_US';
echo '<style>';
echo '.zhclass{display:none}';
echo '.enclass{display:inline}';
echo '</style>';
}else{
switch_to_locale('zh_TW');
$_SESSION['lang'] = 'zh_TW';
echo '<style>';
echo '.enclass{display:none}';
echo '.zhclass{display:inline}';
echo '</style>';
};
}
add_action( 'init', 'my_lang');
但是,如果我使用上面的代码,虽然预期的效果是有效的,但当我按下“添加到卡”时,网站将被暂停(显示加载/旋转)并且无法立即添加到购物车。
【问题讨论】:
-
您在那里制作的回声输出可能会在以后设置标题时出现问题......
-
是的,谢谢你,我发现了。应该将风格放在另一个动作中并挂钩
标签: php wordpress session woocommerce session-variables