265 lines
14 KiB
HTML
265 lines
14 KiB
HTML
|
|
<!DOCTYPE html>
|
|||
|
|
<html>
|
|||
|
|
<head>
|
|||
|
|
<meta charset="{{:MyConfig('shopxo.default_charset', 'utf-8')}}" />
|
|||
|
|
<title>{{$home_seo_site_title}}</title>
|
|||
|
|
<meta name="keywords" content="{{$home_seo_site_keywords}}" />
|
|||
|
|
<meta name="description" content="{{$home_seo_site_description}}" />
|
|||
|
|
<meta name="generator" content="{{$my_url}}" />
|
|||
|
|
<meta name="application-name" content="{{$home_seo_site_title}}" />
|
|||
|
|
<meta name="msapplication-tooltip" content="{{$home_seo_site_title}}" />
|
|||
|
|
<meta name="msapplication-starturl" content="{{$my_url}}" />
|
|||
|
|
<link rel="shortcut icon" type="image/x-icon" href="{{$public_host}}favicon.ico" />
|
|||
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1, maximum-scale=1">
|
|||
|
|
<meta name="apple-mobile-web-app-capable" content="yes">
|
|||
|
|
<meta name="apple-mobile-web-app-title" content="{{$home_site_name}}">
|
|||
|
|
<link rel="apple-touch-icon" href="{{$home_site_logo_square}}">
|
|||
|
|
<link rel="apple-touch-icon-precomposed" href="{{$home_site_logo_square}}">
|
|||
|
|
<link rel="stylesheet" type="text/css" href="{{$public_host}}static/common/iconfont/iconfont.css?v={{$static_cache_version}}" />
|
|||
|
|
<link rel="stylesheet" type="text/css" href="{{$public_host}}static/common/lib/assets/css/amazeui.css?v={{$static_cache_version}}" />
|
|||
|
|
<link rel="stylesheet" type="text/css" href="{{$public_host}}static/common/lib/amazeui-switch/amazeui.switch.css?v={{$static_cache_version}}" />
|
|||
|
|
<link rel="stylesheet" type="text/css" href="{{$public_host}}static/common/lib/amazeui-chosen/amazeui.chosen.css?v={{$static_cache_version}}" />
|
|||
|
|
<link rel="stylesheet" type="text/css" href="{{$public_host}}static/common/lib/cropper/cropper.min.css?v={{$static_cache_version}}" />
|
|||
|
|
<link rel="stylesheet" type="text/css" href="{{$public_host}}static/common/lib/amazeui-tagsinput/amazeui.tagsinput.css?v={{$static_cache_version}}" />
|
|||
|
|
|
|||
|
|
<!-- 轮播插件 -->
|
|||
|
|
<link rel="stylesheet" type="text/css" href="{{$public_host}}static/common/lib/swiper/swiper.min.css?v={{$static_cache_version}}" />
|
|||
|
|
<link rel="stylesheet" type="text/css" href="{{$public_host}}static/common/lib/swiper/swiper-bundle.min.css?v={{$static_cache_version}}" />
|
|||
|
|
|
|||
|
|
<!-- highlight代码高亮 -->
|
|||
|
|
<link rel="stylesheet" href="{{$public_host}}static/common/lib/highlight/monokai_sublime.min.css?v={{$static_cache_version}}" />
|
|||
|
|
|
|||
|
|
<!-- wangEditor -->
|
|||
|
|
<link rel="stylesheet" href="{{$public_host}}static/common/lib/wangeditor/wangeditor-5.1.23.css?v={{$static_cache_version}}" />
|
|||
|
|
|
|||
|
|
<!-- 公共css -->
|
|||
|
|
<link rel="stylesheet" type="text/css" href="{{$public_host}}static/common/css/common.css?v={{$static_cache_version}}" />
|
|||
|
|
<link rel="stylesheet" type="text/css" href="{{$public_host}}static/common/css/forminput.css?v={{$static_cache_version}}" />
|
|||
|
|
|
|||
|
|
<!-- 模块公共css -->
|
|||
|
|
{{if !empty($static_path_data['common_css'])}}
|
|||
|
|
<link rel="stylesheet" type="text/css" href="{{$public_host}}static/{{$static_path_data.common_css}}?v={{$static_cache_version}}" />
|
|||
|
|
{{/if}}
|
|||
|
|
{{if !empty($static_path_data['theme_import_css']) and is_array($static_path_data['theme_import_css'])}}
|
|||
|
|
{{foreach $static_path_data.theme_import_css as $v}}
|
|||
|
|
<link rel="stylesheet" type="text/css" href="{{$public_host}}static/{{$v}}?v={{$static_cache_version}}" />
|
|||
|
|
{{/foreach}}
|
|||
|
|
{{/if}}
|
|||
|
|
{{if !empty($static_path_data['module_css'])}}
|
|||
|
|
<link rel="stylesheet" type="text/css" href="{{$public_host}}static/{{$static_path_data.module_css}}?v={{$static_cache_version}}" />
|
|||
|
|
{{/if}}
|
|||
|
|
{{if !empty($static_path_data['other_css'])}}
|
|||
|
|
<link rel="stylesheet" type="text/css" href="{{$public_host}}static/{{$static_path_data.other_css}}?v={{$static_cache_version}}" />
|
|||
|
|
{{/if}}
|
|||
|
|
|
|||
|
|
<!-- ckplayer播放器 -->
|
|||
|
|
{{if isset($is_load_ckplayer) and $is_load_ckplayer eq 1}}
|
|||
|
|
<link rel="stylesheet" type="text/css" href="{{$public_host}}static/common/lib/ckplayer/css/ckplayer.css?v={{$static_cache_version}}" />
|
|||
|
|
{{/if}}
|
|||
|
|
|
|||
|
|
<!-- 打印css -->
|
|||
|
|
{{if isset($is_load_hiprint) and $is_load_hiprint eq 1}}
|
|||
|
|
<link rel="stylesheet" type="text/css" href="{{$public_host}}static/common/lib/hiprint/css/hiprint.css" />
|
|||
|
|
<link rel="stylesheet" type="text/css" href="{{$public_host}}static/common/lib/hiprint/css/print-lock.css" />
|
|||
|
|
{{/if}}
|
|||
|
|
|
|||
|
|
<!-- 范围滑条 -->
|
|||
|
|
{{if isset($is_load_jrange) and $is_load_jrange eq 1}}
|
|||
|
|
<link rel="stylesheet" type="text/css" href="{{$public_host}}static/common/lib/jRange/jquery.range.css?v={{$static_cache_version}}" />
|
|||
|
|
{{/if}}
|
|||
|
|
|
|||
|
|
<!-- webuploader -->
|
|||
|
|
{{if isset($is_load_webuploader) and $is_load_webuploader eq 1}}
|
|||
|
|
<link rel="stylesheet" type="text/css" href="{{$public_host}}static/common/lib/ueditor/third-party/webuploader/webuploader.css?v={{$static_cache_version}}" />
|
|||
|
|
{{/if}}
|
|||
|
|
|
|||
|
|
<!-- 插件 -->
|
|||
|
|
{{if !empty($static_path_data['plugins_css'])}}
|
|||
|
|
<link rel="stylesheet" type="text/css" href="{{$public_host}}static/{{$static_path_data.plugins_css}}?v={{$static_cache_version}}" />
|
|||
|
|
{{/if}}
|
|||
|
|
|
|||
|
|
<!-- 可视化拖拽 -->
|
|||
|
|
{{if isset($is_load_layout) and $is_load_layout eq 1}}
|
|||
|
|
<link rel="stylesheet" type="text/css" href="{{$public_host}}static/common/css/layout.css?v={{$static_cache_version}}" />
|
|||
|
|
{{/if}}
|
|||
|
|
{{if isset($is_load_layout_admin) and $is_load_layout_admin eq 1}}
|
|||
|
|
<link rel="stylesheet" type="text/css" href="{{$public_host}}static/common/css/layout.admin.css?v={{$static_cache_version}}" />
|
|||
|
|
{{/if}}
|
|||
|
|
<!-- 页面样式 -->
|
|||
|
|
{{if !empty($static_path_data['page_css'])}}
|
|||
|
|
<link rel="stylesheet" type="text/css" href="{{$public_host}}static/{{$static_path_data.page_css}}?v={{$static_cache_version}}" />
|
|||
|
|
{{/if}}
|
|||
|
|
|
|||
|
|
<!-- css钩子 -->
|
|||
|
|
{{if !empty($plugins_css_data) and is_array($plugins_css_data)}}
|
|||
|
|
{{foreach $plugins_css_data as $hook}}
|
|||
|
|
{{if !empty($hook) and is_string($hook)}}
|
|||
|
|
{{if substr($hook, 0, 4) eq 'http'}}
|
|||
|
|
<link rel="stylesheet" type="text/css" href="{{$hook}}?v={{$static_cache_version}}" />
|
|||
|
|
{{else /}}
|
|||
|
|
<link rel="stylesheet" type="text/css" href="{{$public_host}}{{$hook}}?v={{$static_cache_version}}" />
|
|||
|
|
{{/if}}
|
|||
|
|
{{elseif is_array($hook) /}}
|
|||
|
|
{{foreach $hook as $hook_css}}
|
|||
|
|
{{if !empty($hook_css) and is_string($hook_css)}}
|
|||
|
|
{{if substr($hook_css, 0, 4) eq 'http'}}
|
|||
|
|
<link rel="stylesheet" type="text/css" href="{{$hook_css}}?v={{$static_cache_version}}" />
|
|||
|
|
{{else /}}
|
|||
|
|
<link rel="stylesheet" type="text/css" href="{{$public_host}}{{$hook_css}}?v={{$static_cache_version}}" />
|
|||
|
|
{{/if}}
|
|||
|
|
{{/if}}
|
|||
|
|
{{/foreach}}
|
|||
|
|
{{/if}}
|
|||
|
|
{{/foreach}}
|
|||
|
|
{{/if}}
|
|||
|
|
|
|||
|
|
<!-- 公共header内钩子 -->
|
|||
|
|
{{if !empty($plugins_common_header_data) and is_array($plugins_common_header_data)}}
|
|||
|
|
{{foreach $plugins_common_header_data as $hook}}
|
|||
|
|
{{if is_string($hook) or is_int($hook)}}
|
|||
|
|
{{$hook|raw}}
|
|||
|
|
{{/if}}
|
|||
|
|
{{/foreach}}
|
|||
|
|
{{/if}}
|
|||
|
|
|
|||
|
|
<!-- 主题配色 -->
|
|||
|
|
<style type="text/css">
|
|||
|
|
:root {
|
|||
|
|
{{if !empty($theme_style_data) and is_array($theme_style_data)}}
|
|||
|
|
{{foreach $theme_style_data as $k=>$v}}
|
|||
|
|
--{{:str_replace('_', '-', $k);}}: {{$v}}{{if $k eq 'html_body_size'}}px{{elseif in_array($k, ['border_radius', 'border_radius_sm', 'border_radius_lg'])}}rem{{/if}};
|
|||
|
|
{{/foreach}}
|
|||
|
|
{{else /}}
|
|||
|
|
{{:ModuleInclude('public/header_style_root')}}
|
|||
|
|
{{/if}}
|
|||
|
|
}
|
|||
|
|
/* 公共header内js钩子 */
|
|||
|
|
{{if !empty($plugins_common_header_css_data) and is_array($plugins_common_header_css_data)}}
|
|||
|
|
{{foreach $plugins_common_header_css_data as $hook}}
|
|||
|
|
{{if is_string($hook) or is_int($hook)}}
|
|||
|
|
{{$hook|raw}}
|
|||
|
|
{{/if}}
|
|||
|
|
{{/foreach}}
|
|||
|
|
{{/if}}
|
|||
|
|
</style>
|
|||
|
|
<script type="text/javascript">
|
|||
|
|
// 基础配置
|
|||
|
|
var __system_type__ = '{{$system_type}}';
|
|||
|
|
var __root__ = '{{$public_host}}';
|
|||
|
|
var __my_http__ = '{{$my_http}}';
|
|||
|
|
var __my_host__ = '{{$my_host}}';
|
|||
|
|
var __my_url__ = '{{$my_url}}';
|
|||
|
|
var __my_view_url__ = '{{$my_view_url}}';
|
|||
|
|
var __my_public_url__ = '{{$my_public_url}}';
|
|||
|
|
var __public__ = '{{$public_host}}';
|
|||
|
|
var __default_theme__ = '{{$default_theme}}';
|
|||
|
|
var __modal_login_url__ = '{{:MyUrl("index/user/modallogininfo")}}';
|
|||
|
|
var __attachment_host__ = '{{$attachment_host}}';
|
|||
|
|
var __seo_url_suffix__ = '{{:MyC("home_seo_url_html_suffix", "html", true)}}';
|
|||
|
|
var __user_id__ = {{if empty($user['id'])}}0{{else /}}{{$user.id}}{{/if}};
|
|||
|
|
var __currency_symbol__ = '{{$currency_symbol}}';
|
|||
|
|
var __is_mobile__ = '{{if IsMobile()}}1{{else}}0{{/if}}';
|
|||
|
|
var __env_max_input_vars_count__ = '{{$env_max_input_vars_count}}';
|
|||
|
|
var __map_view_url__ = '{{:MyUrl("index/map/index")}}';
|
|||
|
|
var __load_map_type__ = '{{$load_map_type}}';
|
|||
|
|
var __user_login_info_url__ = '{{:MyUrl("index/user/logininfo")}}';
|
|||
|
|
var __user_register_info_url__ = '{{:MyUrl("index/user/reginfo")}}';
|
|||
|
|
var __user_forget_info_url__ = '{{:MyUrl("index/user/forgetpwdinfo")}}';
|
|||
|
|
var __goods_spec_type_url__ = '{{:MyUrl("index/goods/spectype")}}';
|
|||
|
|
var __goods_spec_detail_url__ = '{{:MyUrl("index/goods/specdetail")}}';
|
|||
|
|
var __goods_stock_url__ = '{{:MyUrl("index/goods/stock")}}';
|
|||
|
|
var __goods_cart_save_url__ = '{{:MyUrl("index/cart/save")}}';
|
|||
|
|
var __goods_cart_info_url__ = '{{:MyUrl("index/goods/cartinfo")}}';
|
|||
|
|
var __goods_favor_url__ = '{{:MyUrl("index/goods/favor")}}';
|
|||
|
|
{{if !empty($theme_data_admin_data) and isset($theme_data_admin_data['status']) and $theme_data_admin_data['status'] eq 1 and !empty($theme_data_admin_data['admin_url_data']) and is_array($theme_data_admin_data['admin_url_data'])}}
|
|||
|
|
{{foreach $theme_data_admin_data.admin_url_data as $k=>$v}}
|
|||
|
|
var __theme_data_admin_{{$k}}_url__ = '{{$v}}';
|
|||
|
|
{{/foreach}}
|
|||
|
|
{{/if}}
|
|||
|
|
// 语言定义(用于js调用、模板引擎直接使用$lang_data.xxx获取对应语言即可)
|
|||
|
|
{{if !empty($lang_data)}}
|
|||
|
|
{{foreach $lang_data as $k=>$v}}
|
|||
|
|
{{if !empty($k) and isset($v) and !is_array($v)}}
|
|||
|
|
var lang_{{$k}} = '{{$v}}';
|
|||
|
|
{{/if}}
|
|||
|
|
{{/foreach}}
|
|||
|
|
{{/if}}
|
|||
|
|
// 公共header内js钩子
|
|||
|
|
{{if !empty($plugins_common_header_javascript_data) and is_array($plugins_common_header_javascript_data)}}
|
|||
|
|
{{foreach $plugins_common_header_javascript_data as $v}}
|
|||
|
|
{{if is_array($v)}}
|
|||
|
|
{{if isset($v['var']) and isset($v['value'])}}
|
|||
|
|
{{if is_string($v['value']) or is_int($v['value'])}}
|
|||
|
|
var plugins_{{$v.var}} = '{{$v.value}}';
|
|||
|
|
{{/if}}
|
|||
|
|
{{else /}}
|
|||
|
|
{{foreach $v as $vs}}
|
|||
|
|
{{if isset($vs['var']) and isset($vs['value']) and (is_string($vs['value']) or is_int($vs['value']))}}
|
|||
|
|
var plugins_{{$vs.var}} = '{{$vs.value}}';
|
|||
|
|
{{/if}}
|
|||
|
|
{{/foreach}}
|
|||
|
|
{{/if}}
|
|||
|
|
{{/if}}
|
|||
|
|
{{/foreach}}
|
|||
|
|
{{/if}}
|
|||
|
|
</script>
|
|||
|
|
</head>
|
|||
|
|
<body class="{{$page_unique_mark}} {{if in_array(MiniAppEnv(), MyConfig('shopxo.mini_app_type_list'))}} mini-app-env{{/if}}">
|
|||
|
|
<div class="body-content-container">
|
|||
|
|
<div class="body-content-formal-container">
|
|||
|
|
<!-- 页面加载层 -->
|
|||
|
|
{{if isset($is_page_loading) and $is_page_loading eq 1}}
|
|||
|
|
{{:ModuleInclude('public/page_loading')}}
|
|||
|
|
{{/if}}
|
|||
|
|
|
|||
|
|
<!-- css钩子 -->
|
|||
|
|
{{if (!isset($page_pure) or $page_pure neq 1) and (!isset($is_header) or $is_header eq 1)}}
|
|||
|
|
{{if isset($shopxo_is_develop) and $shopxo_is_develop eq true}}
|
|||
|
|
<div class="plugins-tag">
|
|||
|
|
<span>plugins_css</span>
|
|||
|
|
</div>
|
|||
|
|
{{/if}}
|
|||
|
|
{{/if}}
|
|||
|
|
|
|||
|
|
<!-- 公共header内钩子 -->
|
|||
|
|
{{if (!isset($page_pure) or $page_pure neq 1) and (!isset($is_header) or $is_header eq 1)}}
|
|||
|
|
{{if isset($shopxo_is_develop) and $shopxo_is_develop eq true}}
|
|||
|
|
<div class="plugins-tag">
|
|||
|
|
<span>plugins_common_header</span>
|
|||
|
|
</div>
|
|||
|
|
{{/if}}
|
|||
|
|
{{/if}}
|
|||
|
|
|
|||
|
|
{{if empty($module_data) or !isset($module_data['is_header_hook']) or $module_data['is_header_hook'] eq 1}}
|
|||
|
|
<!-- 公共顶部钩子 -->
|
|||
|
|
{{if !isset($page_pure) or $page_pure neq 1}}
|
|||
|
|
{{if isset($shopxo_is_develop) and $shopxo_is_develop eq true}}
|
|||
|
|
<div class="plugins-tag">
|
|||
|
|
<span>plugins_view_common_top</span>
|
|||
|
|
</div>
|
|||
|
|
{{/if}}
|
|||
|
|
{{if !empty($plugins_view_common_top_data) and is_array($plugins_view_common_top_data)}}
|
|||
|
|
{{foreach $plugins_view_common_top_data as $hook}}
|
|||
|
|
{{if is_string($hook) or is_int($hook)}}
|
|||
|
|
{{$hook|raw}}
|
|||
|
|
{{/if}}
|
|||
|
|
{{/foreach}}
|
|||
|
|
{{/if}}
|
|||
|
|
{{/if}}
|
|||
|
|
|
|||
|
|
<!-- header公共顶部钩子 -->
|
|||
|
|
{{if !isset($is_header) or $is_header eq 1}}
|
|||
|
|
{{if isset($shopxo_is_develop) and $shopxo_is_develop eq true}}
|
|||
|
|
<div class="plugins-tag">
|
|||
|
|
<span>plugins_view_common_top_header</span>
|
|||
|
|
</div>
|
|||
|
|
{{/if}}
|
|||
|
|
{{if !empty($plugins_view_common_top_header_data) and is_array($plugins_view_common_top_header_data)}}
|
|||
|
|
{{foreach $plugins_view_common_top_header_data as $hook}}
|
|||
|
|
{{if is_string($hook) or is_int($hook)}}
|
|||
|
|
{{$hook|raw}}
|
|||
|
|
{{/if}}
|
|||
|
|
{{/foreach}}
|
|||
|
|
{{/if}}
|
|||
|
|
{{/if}}
|
|||
|
|
{{/if}}
|