Zen Cart主要文件详解Zen Cart main file detailed explanationAs the application_top.php in ZenCart system is theinitialization tasks, loading the configuration file forexample include ("includes/configure.php") ; , if not detectedin the file system will try to call the device file.
Then, it will take the initiative to traverse the configurationfile under include/extra_configures and include it.
After loading the next configuration file system is a veryimportant document, which led to the ZenCart and oscommercefeel very different causes, first invokes a require file("includes/initsystem.php") ;
In initsystem.php the first loadinginclude/auto_loaders/conf ig. core.php, conf ig. core.php is atwo round array$autoLoadConf ig, with an array of storage fileinformation for front file, then the system will then loadedthe include/auto_loaders directory of all the file name$loaderPrefix (default config) matching file.
The following program execution after the loading is activelyexecuting program require ("includes/autoload_func.php") ;here it will traverse the $autoLoadConfig array, which lasteffect will include all the necessary use may define functionclass, and variable initialization, the config.core.phpoutside of the obvious example
$autoLoadConf ig[0] [] =array ('autoType' ='c las s' , ' loadFi le'=' class.base.php ' ) ;
Outside the autoload_func.php executed after the effect isrequire (DIR_WS_CLASSES' class.base.php ' ) , the task is toinitialize the local big finish after including theinit_includes directory file, such as:
$autoLoadConf ig[110] [] = array ('autoType' = ' init_script' ,' loadFi le' = ' init_templates.php' ) ;
After executing the autoload_func.php file, it has loaded theinit_templates.php file under the init_includes directory.The above to explain how ZenCart is in accordance with the touchversion of the content displayed.
In the twenty-ninth line of index.php, there is a sentence$directory_array = $template->get_template_part
($code_page_directory, ` /^header_php/ ' ) ;
Since all initialization tasks havebeen completed, we can thenfind their definitions in the following files, such as$autoLoadConf ig[100] [] = array ('autoType' =
' classInstant iate' , 'c las sName' = 'template_func' ,
'obj ectName' = ' template' ) ;
Here is the definition of the $template = new (template_func,$code_page_directory) ; and the definition of variables isdefined here must be defined on the template_func class inclass/template_func.php more familiar with theinit_includes/init_sanitize.php file, in this kind of
important definition of the get_template_dir two approach(get_template_part) and () ;
These two approaches play a deterministic role in the use ofzencart templates.
Get_template_dir function get_template_dir ($template_code,$current_template, $current_page, $template_dir,
$debug=false) , which defines 5 parameters, the first parameteris the common name, it is this file used to form two parameterdiscriminationafter directoryhas nomatching$template_code,the transcript of the acquiescence of system functionfile_exists so many beginners can have doubts
Function, get_template_dir ($template_code,
$current_template, $current_page, $template_dir,
$debug=fal se) {
//echo 'template_default/' . $template_dir. '=' .
$template_code;
If ($this->file_exists ($current_template, $current_page,$template_code)) {
Return $current_template. $current_page. \ / \ ";
}elseif ($thi s->file_exists (DIR_WS_TEMPLATES) ,template_default/, $current_page, ereg_replace (` / ' , ' , ' , '$template_code ' ) , $debug)) {
Return DIR_WS_TEMPLATES. ' template_default/' . $current_page;
} elseif ($this->file_exists ($current_template,
$template_dir, $template_code, ereg_replace (` /' , ' , ' , ' , ' , '$debug ' )) {
Return $current_template. $template_dir;
} else {
Return DIR_WS_TEMPLATES. 'template_default/' . $template_dir;//return $current_template. $template_dir;
}
}
*as
Includes/templates/zccn/index
Includes/templates/template_default/index
Includes/templates/zccn/common
Includes/templates/template_defaul t/common
* /
(get_template_part) method has two functions, the firstparameter is the file directory, the second parameter is thematching requirements, implementation is the consequence ofincluding the directory of all the required document file namematching
For example, $directory_array = $template->get_template_part($code_page_directory, '/^header_php/' ) ;
This sentence is to enforce the consequences of all
$code_page_directory directory under the file name toheader_php off the file
The URL (http://localhost/zencart/index.php,main_page=product_info&cPath=49_27&products_id=83) at thistime?
When you should check the definition of init_sanitize.php in$code_page_directory, the value of $code_page_directory atthis time should be includes/modules/product_info/
Therefore, it should be included in the directory to mop up allheader_php files, in here it seems only a header_php.phpdirectory_array美元=模板-> get_template_part美元美元code_page_directory / ^ header_php /” 这个包括文件实际上是初始化前台不同页面显示所需求用到的变量函数重要是初始化数据库的东西 由于每个页面需求的数据材料都有能够不同 因此index.php main_page=指数当main_page的值不同是在包括/模块/目录下都会有个相应的目录这里是指数目录
只需晓得了这两个办法的用法你就会晓得模板文件都是怎样显示出来的了
再来说明一要求$模板->get_template_dir 'html_header。 phpdir_ws_template current_page_base美元普通的。 “/html_header PHP
假定目前网址 HTTP / /本地/执行/的index.php mai n_page =指数与cpath = 48dir_ws_template定义是在包括/ ini t_templates。 PHP中定义定义
'dir_ws_template ' dir_ws_templates。 template_dir美元。
“/” 由于我如今用的是默许的zccn模板
因此如今的dir_ws_template = includes/templates/ zccn /current_page_base在这里已然就是美元指数
面已然说明了模板-> get_template_dir()的办法了美元
程序会顺次在
包括/模板/ zccn /指数
包括/模板/ templ ate_de fau l t /指数
包括/模板/ zccn /普通
包括/模板/ templ ate_de fau l t /普通
这四个目录下找html_header。 PHP在这里最后在
template_default \共同目录下找到html_header.php
到这里就能够本身写摸板文件了美元 由于模板->get_template_dir()是按顺序找的因此你只需在你的模板文件中存在该文件便可
ZJI原名维翔主机,是原来Wordpress圈知名主机商家,成立于2011年,2018年9月更名为ZJI,提供香港、日本、美国独立服务器(自营/数据中心直营)租用及VDS、虚拟主机空间、域名注册业务。ZJI今年全新上架了台湾CN2线路服务器,本月针对香港高主频服务器和台湾CN2服务器提供7折优惠码,其他机房及产品提供8折优惠码,优惠后台湾CN2线路E5服务器月付595元起。台湾一型CPU:Inte...
欧路云(oulucloud) 商家在前面的文章中也有陆续介绍过几次,这不今天有看到商家新增加美国Cera线路的VPS主机,而且有提供全场八折优惠。按照最低套餐最低配置的折扣,月付VPS主机低至22元,还是比较便宜的。不过我们需要注意的是,欧路云是一家2021年新成立的国人主机商,据说是由深圳和香港的几名大佬创建。如果我们有介意新商家的话,选择的时候谨慎且月付即可,注意数据备份。商家目前主营高防VP...
金山云618年中促销活动正在进行中!金山云针对企业级新用户优惠力度比普通个人用户优惠力度要大,所以我们也是推荐企业新用户身份购买金山云企业级云服务器,尽量购买3年配置的,而不是限时秒杀活动中1年的机型。企业级用户购买金山云服务器推荐企业专区:云服务器N3 2核4G云服务器,1-5M带宽,827.64元/3年,性价比高,性能稳定!点击进入:金山云618年中促销活动目前,金山云基础型E1云服务器2核4...