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

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

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

    主要讲课内容:

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版本: 

14 node_page_view代码追踪

​作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
现在让我们来看一下node_page_view返回了什么,我们在node.module里面找到这个函数。

Drupal版本: 

13 主内容的生成

作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
下面来看这句抽象的代码:
$page_callback_result = call_user_func_array($router_item['page_callback'], $router_item['page_arguments']);

Drupal版本: 

12 菜单回调机制

作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
打开menu.inc文件,找到menu_execute_active_handler函数,阅读这个函数的源代码。

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

最新微信文本消息

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