zoukankan      html  css  js  c++  java
  • Ecshop他们主动双语版切换来推断个人的计划

    个人思路是基于浏览器的语言来推断自己主动,假设中国的浏览器,对使用中国模板。将英语模板。于、英国的模板差值称为不同的产品类别、文章分类,的模板可设置为相同的固定的文本language,所以你不会有打造两个网站


    1、PHP推断浏览器语言
    2、将推断写入Cookie
    3、同一时候改变_CFG['lang']的值
    4、_CFG['template']=_CFG['lang']。便于模板自己主动切换
    5、当用户人工选择?

    lang=cn/en时,进行切换


    1、新建两个模板 zh_cn 和 en_us


    2、includeslib_common.php -> load_config()最后增加

    $lang = array(
            'cn'=>'zh_cn',
            'en'=>'en_us'
        );
        if(isset($_REQUEST['lang']) && isset($lang[$_REQUEST['lang']])){
            $arr['lang'] = $lang[$_REQUEST['lang']];
            setcookie('ACCEPT_LANGUAGE', $arr['lang']);
        }elseif(isset($_COOKIE['ACCEPT_LANGUAGE']) && in_array($_COOKIE['ACCEPT_LANGUAGE'], array('zh_cn', 'en_us'))){
            $arr['lang'] = $_COOKIE['ACCEPT_LANGUAGE'];
        }else{
            $accept_language = strtolower($_SERVER['HTTP_ACCEPT_LANGUAGE']);
            if(strpos($accept_language, 'zh-c')!==false){
                $arr['lang'] = 'zh_cn';
            }else{
                $arr['lang'] = 'en_us';
            }
            setcookie('ACCEPT_LANGUAGE', $arr['lang']);
        }
        $arr['template'] = $arr['lang'];
    
        return $arr;

    3、includescls_template.php -> fetch()

    //$cachename = basename($filename, strrchr($filename, '.')) . '_' . $cache_id;改动为
    $cachename = basename($filename, strrchr($filename, '.')) . '_' . $cache_id.'_'.$GLOBALS['_CFG']['template'<span style="font-family: Arial, Helvetica, sans-serif;">];</span>

    4、includescls_template.php -> make_compiled()

    //$name = $this->compile_dir . '/' . basename($filename) .'.php';改动为
    $name = $this->compile_dir . '/' . basename($filename) .$GLOBALS['_CFG']['template'].'.php';

    5、includescls_template.php -> is_cached()

    //$cachename = basename($filename, strrchr($filename, '.')) . '_' . $cache_id;改动为
    $cachename = basename($filename, strrchr($filename, '.')) . '_' . $cache_id.'_'.$GLOBALS['_CFG']['template'];

    改动模板解析类是为了保证不同的中、英模板之间的模板变异问没有冲突


    6、在模板的任何位置加上

    <a href="?

    lang=cn">Chinese</a><a href="?

    lang=en">English</a>


    最后改动的是languageszh_cncommon.php和languagesen_uscommon.php,用{$lang.xx}


    这种方法也适用于多语言设置

    版权声明:本文博主原创文章,博客,未经同意不得转载。

  • 相关阅读:
    pytorch-卷积基本网络结构-提取网络参数-初始化网络参数
    pytorch-mnist神经网络训练
    python 面对对象 类(继承, 多态)
    注意机制CBAM
    python sqlalchemy 进行 mysql 数据库操作
    python pymysql 连接 mysql数据库进行操作
    mysql数据库基础
    python正则表达式解析(re)
    python 装饰器 (test = submit(test))
    对opencv读取的图片进行像素调整(1080, 1920) 1.cv2.VideoCapture(构造图片读取) 2.cv2.nameWindow(构建视频显示的窗口) 3.cv2.setWindowProperty(设置图片窗口的像素) 4.video_capture(对图片像素进行设置)
  • 原文地址:https://www.cnblogs.com/yxwkf/p/4826137.html
Copyright © 2011-2022 走看看