drupal 6 - 我可以使用一个暴露的视图过滤器来搜索/过滤几个类似的cck字段吗?

时间:2009-08-07 04:24:53

标签: drupal-views cck drupal-exposed-filter drupal-search

我对配置drupal和使用模块的基本知识有一个很好的理解,但由于我对php和mysql的基本理解,我只是进入模块开发和覆盖函数和东西。

我有一个自定义内容类型('books')和一个3 cck字段用于流派(主要,次要,第三)。我希望用户能够使用一个暴露的多选“流派”过滤器过滤所有书籍的视图。这就是我被困的地方 - 我理解如何为3种类型的'权重'(主要,次要,第三)提供三个暴露的过滤器 - 我想要一个允许用户选择任何或所有这些权重的过滤器。 / p>

是自定义搜索表单我唯一的选择吗?有没有更好的方法来设置?我会更好地使用一个带有多个条目的'genres'的cck字段吗?我排除了这一点,因为我认为确定类型'重量'(初级,二级,三级)会更难。

感谢百万。

2 个答案:

答案 0 :(得分:1)

想想一本书的流派意义是什么。分类法正是你用于此类事情的东西。有几个专业人士使用分类法而不是使用CCK字段。

  • 分类法是元数据,CCK字段不是。这意味着html为分类术语生成的方式,它将帮助SE了解这些类型是重要的,它会给你一个免费的SEO
  • 您可以比CCK字段更详细地设置选择类型的方式。再次,因为分类是针对这种事情。您可以通过各种方式设置用户与流派选择的呈现方式。您可以预定义流派或让用户随意输入自己的流派。您可以制作子父母关系船等等
  • 使用分类法比CCK字段更容易,更轻量。
  • 如果只输入1或2个类型,则不需要空CCK字段。
  • 可能是我现在想不到的更多

使用分类法,您可以非常轻松地使用视图进行搜索,从而使用户可以使用多选列表选择流派。您可以决定是否需要所有条款或仅需要其中一个条款。简单地说,你应该真正使用分类法,它应该解决你所有的问题,如果没有,你仍然应该使用它并尝试使用分类法而不是CCK字段来解决你可能遇到的问题。

答案 1 :(得分:0)

Jergason有一个很好的观点,即分类可能非常适合你的领域。但是这不能解决你的加权类型问题。

一种可能的(虽然是hacky)解决方案是拥有第四个字段,该字段组合了其他三个的值,这些值仅在保存节点时设置。然后可以使用该字段进行搜索。

非hacky解决方案是编写自己的views filter,但这是非常先进的。

可能有一种方法可以实现这一点,开箱即用的视图很灵活,希望其他人知道一个更容易的非hacky解决方案。