2015.7.25-2015.8.8 DRUPAL北京夏令营及培训班通知

Drupal做为最顶级的开源CMS之一,功能强大到已经成为EAP(企业应用集成平台)之一。Drupal在网站建设、电子商务、移动开发、微信应用、语义网,企业门户等有着越来越强大的应用。全球各行业以及中国大陆各行业顶级的用户已经大量采用Drupal。

    北京亚艾元软件有限责任公司做为国内最顶级的Drupal开发公司之一,Drupal官网贡献的模块最多的公司,愿意为Drupal做出相应的贡献。为此特举办Drupal中国夏令营及培训班。

    主要讲课内容:

Drupal版本: 
论坛: 

16.5 drupal_page_footer负责收尾工作

作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
当Drupal执行完HTTP请求后,调用drupal_page_footer。

Drupal版本: 

16.4 使用drupal_render呈现页面数组

作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
现在,整个$page数组已经构建完成了,Drupal是怎么把它转为HTML页面的呢?注意这里的这个数组的类型是page,这个和表单元素数组,是一样的。Drupal6里面的表单数组,在Drupal7下,概念上做了进一步的扩充,除了表单元素以外,区块、节点、页面都是以呈现数组的形式出现。所有的呈现数组,经过drupal_render函数处理,就会转换成对应HTML形式。我们来看一下drupal_render的定义。
function drupal_render(&$elements) {
// Early-return nothing if user does not have access.
if (empty($elements) || (isset($elements['#access']) && !$elements['#access'])) {

Drupal版本: 

16.3 通过hook_page_build组装区域区块

​作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
让我们来试一下,打开block.module文件,搜索block_page_build,还真找到了。真聪明,你猜对了。我们来看一下block模块的具体实现。

Drupal版本: 

16.2 页面数组的合成

作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
这是我们这里实际执行的语句。用来合成页面的是drupal_render_page函数。这个时候,传递过来的$page_callback_result,只是一个包含节点对象的呈现数组,节点外面的区域、区块是怎么加进来的呢?这是很多初学者的疑问。让我们来看这个函数的定义:

Drupal版本: 

16.1 drupal_deliver_html_page

​作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
我们在node_menu里面,并没有定义'delivery callback',所以这里的$default_delivery_callback将会使用Drupal的默认值。$page_callback_result就是刚才返回的包含节点对象的呈现数组。现在,让我们来看一下drupal_deliver_page,是怎么将这个数组转换成整个页面,并返回给浏览器的。

Drupal版本: 

16 页面内容组装

作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
现在,包含节点对象的可呈现数组,已经返回来了。这个页面是怎么构件出来的呢?让我们回到函数menu_execute_active_handler上面来。

Drupal版本: 

15 SQL语句的调用

作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
曾经有人在这里,问过我一个这样的问题,我怎么没有看到SQL语句啊?我们前面讲了,在向node_page_view传递参数之前,调用了node_load函数,将节点ID转为了节点对象。我们来看一下node_load函数的定义。
/**
* Loads a node object from the database.

Drupal版本: 

页面

关注我们的微信

关注我们,体验一下Drupal微信(Wechat)模块的最新进展

Think in Drupal 官方微信 亚艾元官方微信

 

最新微信关注用户

冯暄桐
2015-07-30
冯彬
2015-07-30
英英
2015-07-29
高宏锦
2015-07-29
Alexis@Give
2015-07-28
如果我变成回忆
2015-07-27
…alue…
2015-07-27
娜儿
2015-07-25
Jianli
2015-07-23
不难落下
2015-07-23

最新微信文本消息

好的,谢谢葛老师/::)
Bucuo
请教葛老师,这个在线浏览文档的...
精准定位,3天抢光你竞争对手的...
微信
精准定位,3天抢光你竞争对手的...
产品卖不出去?你的客户不够多?...
1
Subscribe to Think in Drupal RSS