2009-11-19 70 views
2

我是Drupal的新手。Drupal:列出包含内容的内容类型

我有几个内容类型,其中一些有一个叫做Foo的特殊字段。该字段的值为1,其他内容为2。

我需要创建一个页面,列出所有具有Foo等于2的内容的内容类型。在此列表中,每个项目必须链接到'some-page/$ s',其中$ s是内容类型。

最初我想过创建一个模块并编写原始SQL,但由于我不知道Drupal数据库结构,我决定尝试使用Views的解决方案。我最终几乎完全符合我的需求,但我无法创建链接,因为内容类型正在用hiphens的下划线打印。

任何帮助?如果你知道一个不同的解决方案(没有视图),请张贴它。

谢谢。

回答

3

的观点绝对是正确的道路。用暴露的过滤器可能会更好。 你也可以尝试参数中的摘要选项,这样你可以看到他们期望的参数(如somepage/blog-post)。如果它期望somepage/blog_post,但你需要一些页面/博客文章的工作,尝试与核心'路径'模块别名。

1

你使url somepage/content_type,而不是想要的网址somepage/content-type

这个问题的解决方案取决于你想要做什么以及为什么你想要有-。 Drupal有路径模块(drupal核心的一部分),可以让你改变网站的外观。所以drupal可以使第一个url看起来像最后一个url。现在如果你已经创建了这个URL,并且想要映射它,我不确定如果你使用路径别名会发生什么。它可能会解决这个问题,但是由于Drupal内部知道它的不同之处,所以您可能无法访问您想要的页面。

1

因为限制使用下划线的事实是由于限制内容类型的命名。

由于解决方案有很长的路要解决您的问题,因此可能值得尝试使用pathauto模块创建指向somepage/content_typesomepage/content-type的路径别名。