第一种方法:

app\common\middleware\LoadLangPack.php 116行+

//添加内容

$webdomain = $_SERVER['HTTP_HOST'];

$LangSub = Db::name('lang')->where(['subdomain'=>$webdomain,'module'=>1,'status'=>1])->find();

if (!empty($LangSub)){

$SubLang = $LangSub['mark'];

$langSet = strtolower($SubLang);

}//添加内容

hkcms_lang表里加subdomain字段,条件module=1的就行。

记得修改\template\admin\adminlte\routine\lang目录的html文件 增加 subdomain

多语言调用:(HTML模板文件中修改)

{hkcms:language currentstyle="active"}

{// currentstyle表示当前选中栏目的class样式、默认是active,如果不是这个class就在上面使用currentstyle属性,只有当前语言才会有,target_html表示是否新窗口打开}

  • {$item.value}
  • {/hkcms:language}

    app\index\taglib\Hkcms.php中public function tagLanguage($tag, $content)

    添加一行$parseStr .= '{php}$'.$tag['id'].'["domain"] = $'.$tag['id'].'["subdomain"];{/php}';

    第二种方法:

    app\common\middleware\LoadLangPack.php 116行+

    //添加内容

    $webdomain = $_SERVER['HTTP_HOST'];

    $LangSub = Db::name('config')->where(['value'=>$webdomain,'name'=>'subdomain'])->find();

    if (!empty($LangSub)){

    $SubLang = $LangSub['lang'];

    $langSet = strtolower($SubLang);

    }//添加内容

    hkcms_config表里加条记录,name='subdomain'