Drupal在中国的机会
经常与人交流Drupal方面的信息,对于Drupal在中国的发展总是充满着期待,作为一个国外的开源软件,Drupal能否借助于开源的这一背景,能否突破中文本土的瓶颈,这是未知的。对于很多熟悉Drupal,并借助于Drupal谋生的中国用户来说,当然是期望流行的越快越好。
经常与人交流Drupal方面的信息,对于Drupal在中国的发展总是充满着期待,作为一个国外的开源软件,Drupal能否借助于开源的这一背景,能否突破中文本土的瓶颈,这是未知的。对于很多熟悉Drupal,并借助于Drupal谋生的中国用户来说,当然是期望流行的越快越好。
在搭建网站的时候,经常会遇到这样的小功能,显示一个节点的时候,在节点的下面,显示一个上一页/下一页这样的链接.
使用book模块,或者论坛模块,可以轻松的实现这一功能,但是对于特定的节点类型,如果不想为其创建一个book,也不想把它设置为论坛的帖子类型,而需要实现同种类型节点的.
比如上一页/下一页具体的需求可以如下:
1、链接包含标题;
2、链接的node必须与当前node同类型;
3、在第一个node和最后一个node时能判断到头/到尾,给出没有链接的提示输出。
这个时候,如果不想自己编写代码的话,那么可以使用Custom Pagers,就可以很方便的实现上述功能了.
Custom Pagers的下载地址为: http://drupal.org/project/custom_pagers
我在用Views输出指定类型的IMCE图像字段,因为一个node里面有很多图像字段.我只想要在views中显示其中一个.该怎么处理呢?
办法一: 最好是在主题层进行处理,提取第一个显示就可以了,就是说都取出来,不过只显示一个, 我以前就是这样处理的 .
不过当时不是在views里面,而是在节点模板里面,我这样处理过,核心代码为base_path().$field_image_cache[0]['filepath'];,这里要做的是提取第一个图片的路径,
但是图片的显示,需要自己处理.
办法二(loocor摸索出来的): 就是使用views提供的Content: Company Logo (field_company_logo) - delta,注意这里的delta,表示第几个图片的意思.
操作符为 is Equal to 0,表示提取第一个.
这样也可以解决问题,而且更简单.
办法三, 在图片的对应字段的设置表单(views里面),下面可以配置,显示哪些图片.
问一下,两个drupal功用一个user系统,要实现同步登陆和注册,我共用了
'authmap'
'profile_fields'
'profile_values'
'role'
'sessions'
'users'
这6张表,虽然用户权限共用了,但是没有解决同步登录的问题,谁能指教一下.
这个问题很有代表性,我也不会,没有解决过。也不知道有没有人解决过这个问题,以及对应的文档。
有时候,我们经常会创建一个菜单,这个菜单不同于主菜单,在有的页面,我们可以直接输出主菜单,但是在另一些页面,我们不想输出主菜单,而是在同样的位置输出另一个菜单,但是这个菜单采用主菜单的样式。也就是说,已经有了一个主菜单,如何把另一个菜单作为主菜单输出。
这是一个实际的问题,我们一般可以把它们都处理为区块,然后统一处理,这是一个解决办法,但是有时候,为了省去调整CSS的工作,需要直接调用对应的函数。对于菜单项,有下面的函数可以调用,
$menu_name = variable_get('menu_primary_links_source', 'primary-links');
$menu = menu_tree_all_data($menu_name);
$output = primary_links_menu_build($menu);
return $output;
这样可以自己输出主菜单。上面的函数不知道对不对。放到template.php文件中,然后在模板文件中直接调用就可以了。
open atrium里面的函数menu_primary_local_tasks也值得参考以下。
我以前也遇到过同类的问题,我描述一下我遇到的问题,我的zhupou.cn在本地可以,但是在服务器上,也就是在线的站点上启用CSS优化后,就会出现一片空白,所以我一直没有启用CSS优化。这样的问题原因是由于权限的问题,在本地没有文件夹权限的问题,但是在虚拟主机上,保存合成CSS文件的文件夹,权限不够,这是我遇到的问题。
我的学员也遇到了同样的问题,不过它是在windows下面遇到的,这是它的解决办法:
在Drupal 6站点性能里开启页面缓存,一切正常,速度却实有不少提升;但再启用带宽优化中的“优化CSS文件”和“优化 JavaScript 文件”服务,整个站点就变成了,访问空白了。
解决方法:
找到 /includes/common.inc/
common.inc line 1967, function drupal_load_stylesheet
当启用了Ubercart以后,为了在别的网站或者同一个网站上的不想显示购物车表单的地方,也能购直接购买产品,那么可以启用购物车链接模块.
可以根据该模块提供的规范,去创建一些链接,从而实现快速的购买.我举个例子,
<a href="http://zhupou.cn/cart/add/e-p616_q1-iquickbuy_special?destination=cart">Drupal网络培训班</a>.
这里面http://zhupou.cn/cart/add/e-p616_q1-iquickbuy_special?destination=cart,就是一个购物车链接模块可以识别的链接,它表示的含义是,
Ctools主要是一套API和工具,用来改进Drupal程序员的开发速度.它还包含了一个名为页面管理器的模块,它主要负责管理页面.具体一点就是管理面板页面,随着它的成长,将来管理的内容可能会更多一点,而不仅仅局限于面板.