Home
张文涛的个人博客
致力于提供Drupal开发,实践等方面的精品资讯

Main navigation

  • 首页
  • Dries Note
  • Drupal
  • Glossary

说说drupal 7

By admin | 3:53 PM CST, Wed September 26, 2012

接触drupal 7快一个月了,用Drupal 7也做了一个政府站点。这个站点本来是asp做的,可能被攻击太多了,换成php来。界面基本没动。难得的是这家公司找到我,用drupal开发政府站点。这下那些官老爷可以放心了。

来说说drupal 7的一些变化。
最明显的,必须是entity概念。一两句说不清楚,另外我也不敢说自己已经掌握entity了,只能说熟悉了。说到entity,必须提到entity api这个模块。这个模块已经成为很多drupal模块的基础了。作者是fago。可能大家不熟悉。如果我说另外一个模块,你一定知道,那就是rules模块。没错,fago就是entity api和rules模块的作者。真是强悍的人啊!

在开发方面,entity概念的提出,对开发者而言的确是很大的福音。对于简单的开发,真是很方便。但是对于复杂的开发,就是考验你思维的时候了。比如commerce模块,也是基于entity。product,order,line item,discount。。。全是entity。

另外一个变化是数据库抽象层,这个目前开发还没用到,暂不做评论。

drupal 7一些代码小片段

By admin | 4:16 PM CST, Mon September 17, 2012

render(node_view(node_load(63)));

dpm(entity_get_info());

dpm(entity_get_info('node'));

$entity1 = new DrupalDefaultEntityController("user");
dpm($entity1);
$user = $entity1->load(array(1));
dpm($user);

ubuntu虚拟机安装lamp步骤

By admin | 2:10 PM CST, Mon September 17, 2012

http://gregk.me/2011/installing-pdo-sqlite3-support-on-ubuntu/

如果遇到pdo安装问题,参考以上链接。

$ apt-get --purge remove php5*
$ sudo apt-get install php5 php5-sqlite php5-mysql
$ sudo apt-get install php-pear php-apc php5-curl
$ sudo apt-get autoremove

drupal 7 模版文件template.php的一点使用经验及小结

By admin | 3:18 PM CST, Mon September 03, 2012

drupal 7 模版文件templates.php的一点使用经验及小结

1:在drupal里面,page.tpl.php默认是没有根据content type来定制模版的。如果想根据content type定制模版怎么办?很简单。
找到当前主题下的template.php文件。一般的主题都有。如果没有,请创建。加入下面的代码:  

function THEMENAME_preprocess_page(&$variables, $hook) {
  if (!empty($variables['node'])) {
    $node = $variables['node'];
    $variables['theme_hook_suggestions'][] = 'page__type__' . $node->type;
  }
}

注意一下,一定要用下划线。

drupal 7 和 drupal 6 下使用jquery代码的一点差异

By admin | 12:31 PM CST, Sun September 02, 2012

drupal 7 和 drupal 6 下使用jquery代码的一点差异

在drupal 6下面,jquery代码可以直接调用,如下面的形式就行,
[javascript]
$(document).ready(function(){
$(".topBar").hide();
$(".attractPolicy li").each(function(index){
var liNode = $(this);
var timeout;
})
});[/javascript]
但是在drupal 7下面,有点小差异,要用下面的形式才能起作用,

[javascript](function($) {
//code
})(jQuery);[/javascript]

具体用法:

drupal pathauto api简单使用介绍

By admin | 11:24 AM CST, Thu August 30, 2012

最近搞个东西,要用pathauto,当然是做伪静态了。
但是用node_save保存的话,按照下面的规则,生成的链接,只是[title].html.
[termpath-raw]/[title-raw].html

[termpath-raw]完全被无视了。。

无奈去翻看pathauto的源码,找到两个api,然后利用api对path重建,ok,问题解决。

api如下

[php]
pathauto_path_delete_all("node/{$node->nid}");
pathauto_create_alias('node', 'insert', "node/{$node->nid}", array('node' => $node), $node->nid, $node->type, $node->language);[/php]

先把已经建立的path删除,然后利用pathauto_create_alias重新建立path。
问题搞定

drupal 特色小模块集合

By admin | 8:28 AM CST, Mon August 27, 2012

产生随机文章,可实现每天,每小时或自定义时间的随机
1:http://drupal.org/project/views_random_seed

试试看,会有意想不到的效果
2:http://drupal.org/project/taxonomy_entity_index

3:在线客服?试试下面的模块。
http://drupal.org/project/drupalchat

4:autocomplete自动完成还不够强悍?那么这个呢?
http://drupal.org/project/autocomplete_deluxe
待续。。。

drupal如何保存taxonomy到一个node?

By admin | 3:27 PM CST, Sat August 25, 2012

两种方案
方案1:
node_save()
设置$node->taxonomy[]=$term;
$term是一个object

方案2:
taxonomy_node_save()
taxonomy_node_save($node,array($tid1,$tid2,$tid3));

drupal关于image的一些module(模块)总结

By admin | 10:07 PM CST, Fri August 24, 2012

以下是布兰卡关于 drupal关于image的一些module(模块)总结

1:imagefield
drupal 6有这个模块,drupal 7已经集成了image,可以不装吧。
需要注意的是这个模块是基于filefield模块,使用前须连filefield一起安装。
下载地址:
http://drupal.org/project/imagefield

2:File(field) path
每次使用drupal发布图片,都要从本地上传?是不是很麻烦?那就建议你使用此模块
可以支持使用远程地址,可以从imce中选择图片。
下载地址:

http://drupal.org/project/filefield_paths

PHP取整函数的总结及实例大全

By admin | 10:48 AM CST, Thu August 23, 2012

PHP取整函数的总结及实例大全PHP取整函数主要有四个函数,ceil,floor,round,intval等。下面是布兰卡对各个函数的用法总结。

  ceil -- 进一法取整单词很形象,ceil就是天花板的意思。想象一下天花板。。。 

说明
float ceil ( float value )
返回不小于 value 的下一个整数,value 如果有小数部分则进一位。ceil() 返回的类型仍然是 float,因为 float 值的范围通常比 integer 要大。
PHP取整函数例子 

ceil() 例子 

echo ceil(4.2); // 5  
echo ceil(9.009); // 10

 

floor -- 舍去法取整

Pagination

  • Previous page ‹‹
  • Page 11
  • Next page ››

Glossary

  • November 2026 (3)
  • October 2026 (5)
  • September 2026 (3)
  • August 2026 (4)
  • July 2026 (2)
  • June 2026 (2)
  • March 2023 (1)
  • October 2022 (1)
  • October 2021 (2)
  • August 2021 (3)
  • June 2021 (2)
  • May 2021 (1)
  • April 2021 (2)
  • November 2020 (1)
  • June 2020 (2)
  • December 2019 (2)
  • November 2019 (1)
  • August 2019 (1)
  • February 2018 (1)
  • October 2017 (1)
  • September 2017 (1)
  • July 2017 (1)
  • June 2017 (2)
  • May 2017 (1)
  • March 2017 (3)
  • December 2016 (2)
  • November 2016 (4)
  • October 2016 (3)
  • June 2016 (1)
  • December 2015 (1)
  • November 2015 (6)
  • October 2015 (2)
  • September 2015 (1)
  • August 2015 (1)
  • July 2015 (1)
  • June 2015 (1)
  • May 2015 (1)
  • March 2015 (1)
  • January 2015 (1)
  • December 2014 (3)
  • October 2014 (4)
  • September 2014 (2)
  • August 2014 (1)
  • July 2014 (1)
  • June 2014 (1)
  • May 2014 (1)
  • April 2014 (2)
  • March 2014 (2)
  • February 2014 (2)
  • January 2014 (4)
  • December 2013 (1)
  • March 2013 (2)
  • February 2013 (2)
  • December 2012 (2)
  • November 2012 (4)
  • October 2012 (1)
  • September 2012 (6)
  • August 2012 (15)
  • July 2012 (5)
  • June 2012 (13)
  • May 2012 (9)
  • April 2012 (8)
  • March 2012 (9)
  • February 2012 (3)
  • January 2012 (1)
  • December 2011 (1)
  • November 2011 (6)
  • October 2011 (2)
  • September 2011 (17)
  • August 2011 (4)
  • July 2011 (4)
  • June 2011 (5)
  • May 2011 (4)

Copyright © 2026

苏ICP备14044171号-1