使用Drupal改版企业网站

g089h515r806 的头像
Submitted by g089h515r806 on 星期五, 2010-09-17 11:28

 lonlife是一家国内领先的提供VPN网络加速的公司,很久以前,网站就跑在Drupal上了。Zhupou.cn网站,一直都是放在lonlife的服务器上的。原来用的是garland主题,样子有点丑陋,给人感觉不是正式。随着网站用户人数的增加,外观的重要性就显示了出来。
   首先整个外观是由专门的人设计出来的,设计好了以后,由 专职的美工将其转换为了html。这后来,就开始转换为Drupal的主题。如图所示,

 

 通过分析,首先是确定使用那些区域,这样就确定了,导航,左边栏,内容,页脚4个区域,作为公司网站,我们并没有想要为期提供更灵活的显示,这里以实用为主。接下来就是分别的制作页面,节点,和区块的模板文件。

为了实现交互性更好的菜单,如图所示
 
我们选择了nice menu模块,安装好了以后,外观异常丑陋,整个布局都乱了,此时我们并没有去覆写nice menu的html输出,而是告诉美工人员,来调整nice menu输出的css,也就是采用css覆写的方式。这种方式有好处,就是简单易行,也有坏处,那就是有很多垃圾的html markup输出。

论坛:

Drupal初学者在编写代码时经常存在的问题:

g089h515r806 的头像
Submitted by g089h515r806 on 星期六, 2010-09-11 13:31

Drupal初学者,由于不熟悉Drupal规范。在编写代码时经常存在的问题:

(1),模块中函数的命名没有遵守Drupal规范。

(2)sql语句没有使用占位符,存在sql注入漏洞。

(3),有一半以上的地方没有正确的使用t函数。

(4)hook_menu中没有使用file键,一些函数,表单应该放在inc文件中。
 

论坛:

我们新的Drupal行为守则

g089h515r806 的头像
Submitted by g089h515r806 on 星期三, 2010-09-01 14:22

     随着我们整个社区的快速成长,我们越来越需要将成长过程中好的东西---经验、教训---沉淀下来,保留下来。也就是说,我们需要继续保持Drupal的有趣性、开放性、挑战性,以及公平性。新的Drupal行为守则((DCOC)申明了值得大家共同遵守的理念。我们可以把它理解为用户的编码标准。它是对我们理念的一次表述,而不是一个苛刻的规则手册。它也是我们已有价值观与整个Drupal社区之间进行沟通的桥梁。

Drupal版本:

从Drupal官方改版花了20万美金说起

g089h515r806 的头像
Submitted by g089h515r806 on 星期四, 2010-08-12 14:14

  Drupal官方网站的改版,其实早就开始了,中间也没有太多的消息.偶尔自己也去关注一下进度.我比较关注的是apache solr在新版本的应用,在我想要定制一个solr模块的时候,我想到了Drupal官方网站的改版团队,我曾经想尝试加入进去,希望能够获取官方网站里面solr相关模块的代码,作为参考,遗憾的是,即便是我加入进去,我也无权查看关于solr的相关实现的代码,那篇说明里面写的很明确了,solr相关实现的代码,只有少数人才能查看.后来我就把整个Drupal的solr集成模块,认真地研读了一遍,确切地说,是用笔和纸抄写了一遍,同时用这种方法学习了一些其它可以下载到的solr扩展模块,这样才定制出来了自己的第一个solr模块.

  即便是drupal官方,他们也不希望像solr这样的模块的实现过早的流通出来,就像是acquia的drupal guarden,他们的后台实现应该也是没有贡献出来的,对于基于GPL的软件,我们重新作了定制开发,我们可以选择贡献出来,也可以选择作为自己的商业秘密.我们生活在这样的充满竞争的时代,如果想获得一些东西,那么就需要交换.要么用时间换金钱,要么用金钱换别人的时间.

drupal里面关于用户权限方面的文件具体在哪里文件里面?大概是怎么调用的?

g089h515r806 的头像
Submitted by g089h515r806 on 星期四, 2010-07-22 03:12

Drupal中的权限有两部分组成:角色(roles)/权限(permission)
权限可以通过hook_perm钩子函数进行定义,例如:
function user_perm() {
  return array('administer permissions', 'administer users', 'access user profiles', 'change own username');
}
这里面的'administer permissions','administer users',就是一个具体的权限。

角色:可以理解为具有一组特定权限的集合,Drupal自带了两个角色,匿名用户,注册用户,角色可以通过后台(/admin/user/roles)添加,比如添加管理员、编辑等等角色。 添加好角色以后,可以在admin/user/permissions来为该角色定义它具有的权限。

通常启用了很多模块以后,权限列表很多,有很多权限很细的,配置起来很麻烦,可能需要不断的调整,选中,取消选中。如果你的权限不能正常工作,那么可以在admin/content/node-settings重置权限。这里有一个按钮。

Drupal版本:

Cannot modify header information - headers already sent by

g089h515r806 的头像
Submitted by g089h515r806 on 星期一, 2010-07-19 10:09

访问Drupal官方网站,竟然看到了错误信息,官方用了这个模块/memcache。

这个错误信息偶尔才会朋友,很不常见的信息,

Warning: Cannot modify header information - headers already sent by (output started at /var/www/drupal.org/htdocs/sites/all/modules/memcache/dmemcache.inc:250) in /var/www/drupal.org/htdocs/includes/bootstrap.inc on line 797

论坛:

使用节点占位符方式来定制复杂的页面模板布局

g089h515r806 的头像
Submitted by g089h515r806 on 星期日, 2010-07-11 14:28

dyj315 20:20:39
怎样制作子页面,不是指view里的页面,是比较复杂的页面,像首页
dyj315 20:20:54
但不是首页,只是专题
Linuser 20:21:54
panels
Linuser 20:22:10

或者单独的创建一个节点模板
dyj315 20:23:05
我已经创建了模板,类似首页,但怎么把它和菜单路径连起来呢
dyj315 20:24:29
要是我的这个子页面是两栏,而首页是三栏,怎么办呢?
Linuser 20:27:54
比如页面模板为page-node-8.tpl.php
Linuser 20:28:05
那么你只需要创建一个菜单项
Linuser 20:28:21
路径为node/88
Linuser 20:28:26
就可以了
Linuser 20:28:28

Drupal版本:

Drupal站点拆分实用步骤及相关要点

g089h515r806 的头像
Submitted by g089h515r806 on 星期三, 2010-07-07 15:04

我们知道,一个Drupal站点,功能越多,需要启用的模块也就越多,模块越多,需要消耗的内存也就越多,因此性能也就越差.为了解决这样的问题,我们常常需要将一个门户网站拆分成多个子站的方式.将一个功能复杂的网站,拆分成多个子站,则需要解决多种技术问题. 以2u4u为例,它包含多个频道,启用了130+个模块,当登录用户比较多时,就会遇到性能瓶颈.

论坛:

页面

Subscribe to Think in Drupal RSS