Heim > Backend-Entwicklung > PHP-Tutorial > drupal主题 Drupal目录结构及请求执行流程

drupal主题 Drupal目录结构及请求执行流程

WBOY
Freigeben: 2016-07-27 16:56:21
Original
1659 Leute haben es durchsucht

目录结构

includes :包含了Drupal常用的函数库。

misc:用来存储Drupal安装中可用的JavaScript,和其它各种图标和图片文件。

modules:包含了所有核心模块,其中一个模块对应一个文件夹。每个模块文件夹包含三个基本文件 

              模块名.install 模块安装时执行的文件
              模块名.info 模块的描述信息
              模块名.module 模块的所有处理函数

profiles:Drupal的安装轮廓目录,比如门户,个人博客,电子商务

scripts:包含了许多脚本,这些脚本可用于语法检查,代码清洁,从命令行运行Drupal,使用cron处理特定情况等等。在Drupal的请求生命周期中,用不到它;里面包含一些shell和Perl的实用脚本。

sites:存放网站的配置文件,第三方模块(sites/all/modules),主题(sites/all/ themes)等。

sites/default /files:Drupal上传文件的目录

themes:包含了Drupal的模板引擎和默认主题。你下载的或者创建的其它主题,不能放在这里;应该放在sites/all/ themes中。

cron.php:用来执行周期性任务,比如清理过期缓存数据,以及计算统计信息。

index.php:处理请求的主入口。

install.php: Drupal安装器的主入口。

update.php: Drupal版本升级后,用来更新数据库。

xmlrpc.php: 用来接收XML-RPC请求,如果你的网站不打算接收XML-RPC请求的话,那么可以将其从中删除。

robots.txt:它是搜索引擎爬虫排除标准的默认实现。

 

执行流程:
.引导流程
分为9个阶段:
1.初始化配置:这个阶段包括记录页面的开始时间,初始化全局变量,读取配置文件的配置信息,初始化cookie域
SESSION名 
2.早期页面缓存:include缓存处理文件,如果系统开启了缓存,并且实现了page_cache_fastpath函数,函数有输出并且返回true,则直接输出内容,程序退出
3.初始化数据库:include数据库处理文件,激活数据库。
4.权限验证:如果没有权限,程序退出
5.初始化session:include session处理文件,注册session处理函数,并session_start();
6.后期页面缓存:如果无缓存则调用所有模块的 模块名_boot()函数并发送header,有缓存则读取缓存并调用 模块名_exit()函数,程序退出
7.初始化语言:多语言环境
8.初始化路径:根据当前url查找模块路径
9.最后阶段:include需要的函数文件,注册异常处理函数,加载所有模块,并初始化模块(通过调用 模块名_init 函数)

 

.处理请求
根据流程一的第8阶段,从数据库中查出回调函数并执行,将数据放到数组中,以便下阶段处理
.主题化数据
根据流程二的数组,和网站启用的主题,对数据进行处理,并展示

以上就介绍了drupal主题 Drupal目录结构及请求执行流程,包括了drupal主题方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage