WP上有国际化插件的功能。如果我制作.pot文件,我可以把我的插件翻译成任何语言。当我安装一个插件到网站,我可以选择任何语言,插件将被翻译成任何语言从可能。
问题是如何通过自己的设置来翻译每个用户的插件。如果任何用户从主站点语言中设置其他语言,那么在管理仪表板中,任何插件都将被翻译成用户语言。
但另一种情况是在网站的前端:所有插件只有一个翻译(主要网站语言)。
是否有通过用户设置更改本地化的解决方案?如何通过用户区域设置从WP的前端获取.pot文件的翻译?
发布于 2021-06-22 20:44:08
谢谢你对我的主题感兴趣。我已经找到了我的任务的解决方案。
首先,最简单的方法是使用插件,JSM-user-locale是这个任务的好插件:wordpress.org/plugins/jsm-user-locale。
另一种方法是使用标准WP函数。您可以使用函数获取用户区域设置。
get_user_meta( $user_id, 'locale', $single = true );
站点本地化,您可以检查
get_locale();
如果您必须用函数更新用户的本地化
update_user_meta( $user_id, 'locale', $user_locale );
对于切换本地化,您可以使用函数:
switch_to_locale( $user_locale );
此函数将切换一个会话的本地化。
所有上述功能都有助于更新用户函数。
我希望这对你有帮助。
https://wordpress.stackexchange.com/questions/390871
复制相似问题