cmsConfig = get_addon_config('cms'); if (!$this->cmsConfig['web_site_status']) { $this->error('站点已经关闭,请稍后访问~'); } $Theme = Config::get('site.theme') ?: 'default'; Config::set(['view_path' => TEMPLATE_PATH . $Theme . '/cms' . DS], 'view'); $this->app->bind('think\Paginator', 'addons\cms\paginator\Page'); $this->initLang(); } protected function initLang() { $this->langList = Db::name('lang')->where('is_enabled', 1)->order('sort asc,id asc')->select()->toArray(); $this->regionList = cms_enabled_regions(); $this->defaultSiteLang = cms_default_lang(); $this->siteLang = cms_current_lang(); $this->siteRegion = cms_current_region(); if ($this->siteLang !== $this->defaultSiteLang) { $translate = Db::name('cms_config_data')->where('lang', $this->siteLang)->find(); if ($translate) { foreach (['site_name', 'site_title', 'site_keyword', 'site_description', 'site_logo_light', 'site_logo_dark'] as $field) { if (isset($translate[$field]) && $translate[$field] !== '') { $this->cmsConfig[$field] = $translate[$field]; } } } } $this->assign('cms_config', $this->cmsConfig); $this->assign('site_lang', $this->siteLang); $this->assign('default_site_lang', $this->defaultSiteLang); $this->assign('site_langs', $this->langList); $this->assign('site_regions', $this->regionList); $this->assign('site_region', $this->siteRegion); } }