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()是按顺序找的因此你只需在你的模板文件中存在该文件便可
百纵科技:美国高防服务器,洛杉矶C3机房 独家接入zenlayer清洗 带金盾硬防,CPU全系列E52670、E52680v3 DDR4内存 三星固态盘阵列!带宽接入了cn2/bgp线路,速度快,无需备案,非常适合国内外用户群体的外贸、搭建网站等用途。C3机房,双程CN2线路,默认200G高防,3+1(高防IP),不限流量,季付送带宽美国洛杉矶C3机房套餐处理器内存硬盘IP数带宽线路防御价格/月套...
Hostodo 算是比较小众的海外主机商,这次九月份开学季有提供促销活动。不过如果我们有熟悉的朋友应该知道,这个服务商家也是比较时间久的,而且商家推进活动比较稳,每个月都有部分活动。目前有提供机房可选斯波坎、拉斯维加斯和迈阿密。从机房的地理位置和实际的速度,中文业务速度应该不是优化直连的,但是有需要海外业务的话一般有人选择。以前一直也持有他们家的年付12美元的机器,后来用不到就取消未续约。第一、开...
Hostadvice主机目录对我们的服务进行了测试,然后给PQ.hosting颁发了十大WordPress托管奖。为此,宣布PQ.Hosting将在一周内进行折扣优惠,购买和续订虚拟服务器使用优惠码:Hostadvice ,全部优惠10%。PQ.hosting,国外商家,成天于2019年,正规公司,是全球互联网注册商协会 RIPE 的成员。主要是因为提供1Gbps带宽、不限流量的基于KVM虚拟的V...