欢迎光临
我们一直在努力

获取多站/多语种 ( 基于 WPML ) WordPress 网站当前的语种

建站超值云服务器,限时71元/月

某项目需要获取当前网站的语种(基于 WPML 的多语种网站),如果仅仅是 WPML 的话,使用其定义的常量 ICL_LANGUAGE_CODE 即可获取当前的语种代码,问题是如果 WPML 未启用呢?网站架构是多站呢?度娘和谷哥都没给出答案,看来不能偷懒了。

作用与用途在说明中已经说的够清楚了!这里就不再多说啥了。

How to get the  wordpress current languange attribute? the answer is here!

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
/**
 *作用:返回基于WPML的多语种网站当前的语种,如果WPML未启用,则返回其默认语种的code,兼容多站;
 *用法:
 *$get_lang_attr = new GET_LANG_ATTR();
 *$get_lang_attr=$get_lang_attr->cwp_get_current_lang_attribute();
 *echo $get_lang_attr;
 *作者:suifentgec 
 */
class GET_LANG_ATTR{
    public function is_someone_plugin_activated($plugin_name){
        $plugin_name=trim($plugin_name);
        if(!empty($plugin_name)){
            $active_plugins = (array) get_option( 'active_plugins', array() );
            if ( is_multisite() )
                $active_plugins = array_merge( $active_plugins, get_site_option( 'active_sitewide_plugins', array() ) );
            foreach ( $active_plugins as $plugin )
                if ( strpos( $plugin, $plugin_name ) ) return true;
            return false;
        }else{
            return false;
        }
    }
    public function cwp_get_current_lang_attribute(){
        $is_wpml_activated=$this->is_someone_plugin_activated('/sitepress.php');
        if($is_wpml_activated){
            global $sitepress;
            $languge_attribute=$sitepress->get_current_language();
        }else{
            $languge_attribute=get_bloginfo( 'language' );
        }
        return $languge_attribute;
    
赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 获取多站/多语种 ( 基于 WPML ) WordPress 网站当前的语种
分享到: 更多 (0)