如何在action模块中添加新动作
在开发网站时,安装了private message模块,用于站内发送短消息,现在想在action模块中添加个用于自动调用private message的动作,用于配合trigger在某种特定情况下可以自动发送短消息,请问应该如何实现?谢谢
论坛:
Drupal版本:
关于drupal7的page页面的命名机制
Think in Drupal第4集 预告
经过三个月的辛苦努力,Think in Drupal第4集的写作工作即将完工。第4集本身和2,3集没有直接联系,可以看作是第1集的姐妹篇。在这一集的Think in Drupal里面,主要讲解了一下内容:
基于Entity API自定义一个实体类型
Views的集成开发,如何导出views到代码里面,如果定义新的Views字段
Rules的集成开发,如何自定义一个动作,自定义一个条件,如何导出rules规则到模块代码里面。
上下文链接的集成
Drupal批处理(Batch)API
Drupal主题系统
Drupal最佳实践,代码安全、编码标准、GIt使用
Ctools插件开发,如果自定义一个插件类型,
本集,以自己编写的Breadcrumb2模块和Field Validation模块为主线,介绍了Drupal7模块开发中的常用技术。
预计将会在2012年12月底完工,2013年1月上旬,将会在thinkindrupal.taobao.com上面出售。
Drupal版本:
drupal中的hook顺序问题
Drupal中的hook顺序问题,这是刚学Drupal开始时,经常遇到的一个问题,因为Drupal中的hook很多,有些hook,它的执行顺序,对后面的是有影响的。
比如hook_form_alter,如果一个多个模块,同时使用hook_form_alter修改同一个表单,这个时候,先后顺序不一样,效果可能也就不同。
在drupal7中,为了解决hook的顺序问题,我们可以调整模块的重量,比如我在Field
Validation模块中,就使用了下面的代码:
/**
* Implements hook_install().
*/
function field_validation_install() {
db_query("UPDATE {system} SET weight = 10 WHERE name = 'field_validation'");
}
通过将field_validation'模块的重量设置为10,从而让这个模块的钩子实现,放在靠后的位置执行。
Drupal版本:
购买Think in Drupal中文资料,送thinkindrupal.com读者账号
凡是购买Think in Drupal中文资料的用户,在购买成功后,可以增送一个thinkindrupal.com账号。thinkindrupal.com是老葛的个人博客,原名zhupou.cn,现在更名为了thinkindrupal.com.现在网站关闭了注册功能,主要是因为垃圾用户太多,很多都是发广告的,前段时间清空了大量的垃圾用户,但是也有部分真实的用户被清除掉了。
当您收到我们快递Think in Drupa资料以后,评价完毕,注意,只有给我们好评的客户,才会增送thinkindrupal.com账号。您可以通过旺旺、QQ、或者邮件,告诉老葛,你想要的用户名、密码。老葛会通过thinkindrupal.com的后台为您创建对应的账号。对于只提供用户名的,创建的密码与用户名将会一致,请登录后修改您的密码。
有关资料中的各种问题,请大家发到thinkindrupal.com的论坛里面来,通常放到“有问有答”就可以了。对于与资料相关的问题,我们会第一时间及时的给您答复。
Drupal版本:
drupal慢?不,Drupal很快
很多人刚接触Drupal的时候,总是感觉Drupal很慢,即便是在本地,装了几个Drupal模块以后,感觉就跑不动了。这个本身和本地环境的配置也有关系,建议修改php.ini文件,将PHP的内存,执行时间都调的大一点。这样就不会感觉慢了。
模块不要装太多,尤其是安装量比较小的Drupal模块,更应该注意。模块太多,对于性能的拖累也是非常明显的。
网站上线后,建议开启所有的缓存。性能优化的关键就在于缓存。有各种层次的缓存技术,具体可以参看Think in Drupal 第三集里面,有关性能优化的介绍。
Drupal6比Drupal5慢, Drupal7比Drupal6慢,Drupal8比Drupal7慢。其中,Drupal7的性能问题最为突出,性能比Drupal6慢很多。Entity API模块用的时候,要小心,很吃内存,也存在潜在的性能问题。顺便说一句,Commerce比Ubercart慢,具体慢多少,没有实际测试过,这是应该的,Commerce大量的使用Entity API,对性能影响很大,性能问题一直也是让commerce头疼的问题。
drupal取当前路径
Drupal模块开发过程中,经常需要获取当前路径,获取当前路径别名:
获取当前当前路径:
current_path
适用Drupal7,Drupal8
获取当前当前路径别名:
drupal_get_path_alias
适用Drupal6,Drupal7,Drupal8
获取当前内部路径:
drupal_get_normal_path
适用Drupal6,Drupal7,Drupal8
获取当前路径别名(或路径):
request_path
适用Drupal7,Drupal8

