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()是按顺序找的因此你只需在你的模板文件中存在该文件便可
特网云官網特网云服务器在硬件级别上实现云主机之间的完全隔离;采用高端服务器进行部署,同时采用集中的管理与监控,确保业务稳定可靠,搭建纯SSD架构的高性能企业级云服务器,同时采用Intel Haswell CPU、高频DDR4内存、高速Sas3 SSD闪存作为底层硬件配置,分钟级响应速度,特网云采用自带硬防节点,部分节点享免费20G防御,可实现300G防御峰值,有效防御DDoS、CC等恶意攻击,保障...
buyvm正式对外开卖第四个数据中心“迈阿密”的块存储服务,和前面拉斯维加斯、纽约、卢森堡一样,依旧是每256G硬盘仅需1.25美元/月,最大支持10T硬盘。配合buyvm自己的VPS,1Gbps带宽、不限流量,在vps上挂载块存储之后就可以用来做数据备份、文件下载、刷BT等一系列工作。官方网站:https://buyvm.net支持信用卡、PayPal、支付宝付款,支付宝付款用的是加元汇率,貌似...
CloudCone的[2021 Flash Sale]活动仍在继续,针对独立服务器、VPS或者Hosted email,其中VPS主机基于KVM架构,最低每月1.99美元,支持7天退款到账户,可使用PayPal或者支付宝付款,先充值后下单的方式。这是一家成立于2017年的国外VPS主机商,提供独立服务器租用和VPS主机,其中VPS基于KVM架构,多个不同系列,也经常提供一些促销套餐,数据中心在洛杉...