Drupal并没有提供API来获得term的dpeth;但是我们仍然有方法获得。本文分享两种方法,供有需要读者自行选择。
1:自行构造函数,通过数据库查询方式来获得。
Drupal并没有提供API来获得term的dpeth;但是我们仍然有方法获得。本文分享两种方法,供有需要读者自行选择。
1:自行构造函数,通过数据库查询方式来获得。
背景:
在一个电子商务网站上发现有很多@sina.com的垃圾注册用户。虽然已经开启了honeypot模块,但是没有屏蔽住此类注册。
分析:
攻击者可能比较熟悉honeypot的工作机制,可以自己编写相应的脚本实现恶意注册。
在Drupal系统中,默认情况下,用户注册都会有日志记录,保存在watchdog表中。通过分析watchdog表中的关于用户的日志的情况,可以统计出相应的信息供参考。
然后通过user block模块或其他相应模块屏蔽该恶意IP的注册。
解决步骤:
在任意mysql客户端,或者phpmysql里面执行如下sql语句:
一年一度的DrupalCamp China过去了,有幸参加,并作分享;同时有幸与commerce的作者Ryan做了合影。附上照片如下:
关于Entity的分享,到如下连接可看到:


pathauto允许批量更新路径别名。但是没办法根据内容类型删除。
经过一番调查,可以使用如下技巧:
首先执行sql,删除掉路径别名,
DELETE FROM url_alias WHERE dst LIKE 'my_custom_pattern/%';
假设当前的svn的工作目录是/var/www/test
1:查找并删除所有的.svn文件
cd /var/www/test find . -name .svn -type -d | xargs rm -rf
2:初始化git并提交。
git init git add ./* git commit -m "init"
3:如果你不想把git仓库放到其他地方,而只是放到本机,则如下操作:
mkdir /home/user1/git cd /home/user1/git git init --bare
4:将仓库切添加到本地仓库:
在描述这个问题之前,介绍下Google跟踪代码的情况。
Google跟踪代码目前有两个版本,我们姑且命名为新版本,旧版本。如何区分,很简单。
查看你的Google跟增代码:
如果是ga.js的为旧版。
如果是analytics.js的为新版。
目前网络上充斥的大部分的案例是基于旧版本的。
对于一些Google高级跟踪功能,两个版本的写法有点不一致。下面是常用的Google事件跟踪代码的实例:
对于旧版本的ga.js
https://developers.google.com/analytics/devguides/collection/gajs/event…
$node->field_name['und'][0]['safe_value']
对于大多数人来说,一般会使用上面的方式来打印一个字段的值。
这是普遍的做法,但是不通用。
上面的做法,会有如下问题:
1: 'und'的使用容易导致多语言方面的问题。
2:上面的方式,打印的是field的原始的值;不是正常的field的渲染方式。
3:[0]['safe_value'],这种方式只会渲染第一个值。如果是一个多值字段,会有数据不会被渲染出来。
4:对于有些字段,比如entityreference类型的字段,是没有['safe_value']这个东西的,这种方式很容易出现语法错误。
下面推荐的是一种Drupal原生的方式渲染字段:
即field_view_field
常规用法如下:
使用Drupal构建复杂而动态的内容是件很容易的事情。但是稍有不慎,你会为这种容易付出代价。在用户查看某些复杂而动态的页面的时候,复杂的数据库查询,与高花销的计算会导致页面性能方面的问题。
解决方案之一是在Druapl的后台页面开启页面缓存。页面缓存开启后,可以在某些页面极大的降低数据库查询次数从而提高页面性能。但是这有一定的局限性,就是页面缓存仅仅对匿名用户有效。对应登录用户则会生效。
逐渐的,你可能会分析自己写过的代码,找出数据出查询的热点进行缓存优化。幸运的是,Drupal已经内置了一些缓存API,如果遵循下面的一些规则,可以将你的代码优化工作变得更容易。
基本规则:
规则:如果计算结果可以重用或存储,就不要计算两次。
下面的简单例子用来演示这种情况。
安装Java环境
yum install java-1.7.0-openjdk
安装Tomcat
useradd -Mb /usr/local tomcat
到http://tomcat.apache.org/download-70.cgi下载最新tomcat安装到/usr/local/src
tar -C /usr/local -zxf /usr/local/src/apache-tomcat-7.*.tar.gz mv /usr/local/apache-tomcat-7.* /usr/local/tomcat
[可选]修改端口:
光看文字,可能不太明白,下面上图:

这是admin/config页面的显示效果。右上角的test pane是我们自己加上去的。下面的代码演示如何实现这种效果:
Copyright © 2026