Views

Views exposer filter中<Any>不能翻译的问题

在使用views模块,并利用其exposer filter功能时,会碰到一个问题,就是筛选选项中的<Any>没法翻译,能找到<Any>字段,并翻译,但是翻译不起作用。

解决办法:http://drupal.org/node/854412

原因是views模块中的views_handler_filter.inc中没有将<Any>放入t句式中,上面的链接中作者提供了一个补丁,就是将

$any_label = variable_get('views_exposed_filter_any_label', 'old_any') == 'old_any' ? '<Any>' : t('- Any -');

改成了     

$any_label = variable_get('views_exposed_filter_any_label', 'old_any') == 'old_any' ? t('<Any>') : t('- Any -');

把<Any>放到t中去了,这样就能翻译了。

将博客推送到首页

下一步要做的事就是为博客建一个“view(视图,大致来说是一个列表)“,并且将这个视图作为站点的首页。确实,有更简单的方法来实现,即只需在内容发布页面选上 Promoted to Front page,但是Views作为Drupal不可或缺的一个部分,你早晚要用上它。

点管理菜单中的 Structure ,然后点这个界面的最后一个连接 Views。在接下来的界面顶端,有一个 Add new view 链接,点它,会出现如下界面。

添加视图

图30.添加视图

添加视图有好多选项可以做,我为简单起见通过下图向你展示我做的选项。

操作:Attendee View

Flag 模块提供了一个默认的视图供用户查看自己所标识的内容。你现在到Navigation菜单中,会看到一个“My attendance”链接,这里将显示你曾经标识为“参加”的全部活动。

      但是,书友会还想看到一项活动中谁将参加。这样,我们需要创建一个新的视图,如图9-13。

      图9-13.活动参与者列表视图

      1、进入Administer→Site building→Views (admin/build/views),点“Add”标签。

      2、如表9-18完成表单。

      表9-18.Attendees 视图设置     

操作:“即将开始活动”视图

至此,我们已经创建了活动内容类型并且填充了一些内容,现在我们需要提供一条访问活动内容的途径。书友会要求,有一个“即将开始活动”列表方便会员一下看 到在未来几天或者几周将要举行的聚会。我们将利用Views模块创建一个区块来实现这个。要注意的事,创建活动视图的时候,我们一般只对日期字段进行排列 或者限制,而不是如平常那样针对内容的创建和更新时间。

     我们将为那些时间字段处于将来的已发布活动创建一个简单的区块视图。在视图配置项中,有一个值“greater than now”就表示这个数据是“将来的”。最后,这个视图将按照活动的时间顺序(或升序,注意不是活动的发布时间)来排列。完成后,这个部分将如图9-6。点 区块中的活动名称将来到活动的完整信息页面。

      图9-6.Aurora Book Club的“即将开始活动”列表

操作:图库视图

  我们现在把上传图片的过程基本理完了,单张图片看起来也不赖了。但是现在站点的一个缺点是缩略图都在单个页面显示了。如果图片网格式的列出,让一个小区域 显示多张图片岂不是更好。要完成这个任务,我们可以用Views模块来设立一个视图。完成后,这一部分将如图7-23所示。

      图7-23.最终图库视图效果

      1、进入Administer→Site building→Modules (admin/build/modules) ,启用下列模块:

  • Other

         ——Advanced Help

  • Views

         ——Views

聚焦:Views Bulk Operations(批量操作视图)

我们为网站编辑完成的工作已经不少了。现在他们能够转移文章状态,把文章退回作者修改,当有文章等待审查时收到通知,当文章可以面世时将文章自动发布。但是,编辑们现在仍然需要一篇文章一篇文章的处理,当站点被雷同新闻和低劣的诗章拖入泥沼时,这是个令人烦恼的缺点。

      在Administer→Content management→Content (admin/content/node)中,Drupal有个内置的内容管理页。在这里,管理员一次可以浏览20条信息,并且对他们进行类似发布或者取 消发布的批量操作,如图6-14。但是,这个界面没有利用actions系统,它也不能自定义表中显示的信息。

      图6-14.Drupal默认的内容管理视图

操作:使用Views模块建立“新建”和“最新编辑”页面列表

Drupal核心中有个模块叫Tracker,它能提供一个很方便的展示最近被更新内容的页面。但是,这个页面并不完全满足学生会的需求。Tracker 模块列出所有的新内容,包括新编辑的,而且把帖子的评论也算作“更新”。这就意味着大多数列出来的最近更新条目并没有实际修改过里面的内容,它混淆了最近 更新内容和新建内容。学生会特别需要这两种列表:一个是新建内容列表,另外一个是最近编辑内容列表。

      既然Tracker不适用,那我们就准备用第3章里面的Views模块来创建自定义列表了。Views模块有个默认的视图可以取代Tracker列表,我们将以它为基础来建立我们想要的两个列表:“新建”和“最近编辑”。

      “新建”列表

      1、进入Administer→Site building→Modules (admin/build/modules),启用下列模块:

操作:Views模块

要给用户展示这个站点的所有可用的jobs.实际的用户(更特殊的,有“编辑”角色的用户)将使用第二个view来看到申请各种job的applicant的列表。
 

聚焦:Veiws

Views模块可以为你的站点提供数据的列表,如用户,评论,节点或更多。Views提供的数据列表被叫做一个view,这个view通常是小写以区别于开头大写的Views模块。图3-17是一些我们可以用Views模块创建的列表。