Yuki 在 2017-08-05 12:00 星期六 提交
hook 分两类
定义
什么是定义呢,
- hook_menu
- hook_entity_info
- hook_theme
之类的,定义什么什么
如上:
- hook_menu 定义一个 路由
- hook_entity_info 定义一个entity模型
- hook_theme 定义一个模版
功能
什么是功能
- hook_node_insert
- hook_user_login
发生某个事件需要做什么
如上:
- hook_node_insert 当新node插入的时候,我的模块需要做什么
- hook_user_login 当用户登录的时候,我的模块需要做什么
Drupal 的所有扩展机制都是建立在 hook 机制上的。
Yuki 在 2015-06-05 19:07 星期五 提交
刚写了一个hook_menu试了一下这样写,感觉发现新大陆了。
$items['test/%node']
$items['test/%user']
可以直接占位,然后在url中传参直接传id。drupal会直接把相应的对象传到函数里去。
上面第一个传到回调函数的就是是一个node对象。
第二个就是User对象。
今天看了hook_menu的文档介绍 原来是自动装配器,调用的是实现了通配符_load的函数,如 %user 则会自动调用 user_load %test 会调用 test_load 当然如果有模块实现了test_load函数才行。
还有一个高级用法。暂时没看懂。