Php 如何根据将哪些内容拉入附加视图,从默认Drupal视图中过滤出内容?

Php 如何根据将哪些内容拉入附加视图,从默认Drupal视图中过滤出内容?,php,drupal,drupal-6,drupal-views,drupal-modules,Php,Drupal,Drupal 6,Drupal Views,Drupal Modules,目前: 我有一个页面视图,通过一个简单的CCK下拉列表显示所有标记为“未精选”的内容 视图的附件显示了所有具有“特色”的内容,并将其样式设置为更令人印象深刻 我希望能够在附件视图的顶部显示一些(比如3个)特色项目,并在下面的视图中显示所有内容,无论是否特色,不包括附件中显示的3个 使用Views UI和一两个自定义模块(如果必要)实现这一点的最简单方法是什么 我使用的是Drupal 6和Views 2,有多种方法可以做到这一点。这里有一些替代方案 (使用您的方法)我的理解是,您正在使用一个CCK

目前:

我有一个页面视图,通过一个简单的CCK下拉列表显示所有标记为“未精选”的内容

视图的附件显示了所有具有“特色”的内容,并将其样式设置为更令人印象深刻

我希望能够在附件视图的顶部显示一些(比如3个)特色项目,并在下面的视图中显示所有内容,无论是否特色,不包括附件中显示的3个

使用Views UI和一两个自定义模块(如果必要)实现这一点的最简单方法是什么


我使用的是Drupal 6和Views 2,有多种方法可以做到这一点。这里有一些替代方案

  • (使用您的方法)我的理解是,您正在使用一个CCK选择列表字段(我们称之为
    FState
    ),该字段的状态为“特色”。基本上,您需要显示附件显示中显示的项目,并显示页面视图中未显示的项目。
    • 在附件视图中,您应该添加一个过滤器,它将是
      Content:FState=Featured
      。可以通过在“视图过滤器”下拉列表中选择“内容”组来完成此操作。选择
      Content:FState(field\u FState)-允许的值
      。选择
      特色
      。确保操作员是
      之一
    • 在页面视图中,执行完全相同的操作,除了确保操作员是
      不是
  • 如果我自己做这件事,我会为特色内容使用nodequeue模块()。对于我的附件视图,我将确保项目在nodequeue中,对于页面视图,我将确保项目不在nodequeue中(使用正确的过滤器)。互联网上有大量关于使用nodequeue并将其与视图集成的资料
  • 另一种选择是使用Flag模块(),尽管我怀疑nodequeue更适合您
  • 编辑: 根据您的意见,我更了解您的要求。也许你正在混合一些语言,可能会让局外人感到困惑。当你说“特色”内容时,这意味着内容是特别显示的。因此,当您说“特色”内容也与非特色内容一起出现在页面视图中时,可能会令人困惑

    总之,这里是我理解您现在的需求的地方(继续使用“特色”的方式)

  • 您有两个视图:附件 视图和页面视图。附件 视野更开阔一点 吸引人
  • “附件”视图上显示的新闻文章不会显示 在页面视图上
  • 假设附件视图有4篇文章的空间
  • 有时你会将文章标记为“特色”。最新的4篇文章 显示在 附件视图。在页面视图中, 所有新闻文章也显示在 不考虑时间顺序的 他们是否被标记为 “特色”或过去没有。唯一的条件 是不应该有 附件之间的重复 视图和页面视图
  • 您的规范中有一点疑问……请暂时忘记您的CCK select字段。我的问题是:您想(a)在附件视图中按时间顺序简单地显示4篇最新的“特色”文章,还是(b)在附件视图中明确确定项目及其顺序

    在案例(b)中,你可以选择一篇大概1个月的文章,因为这是一篇精彩的文章,你仍然想继续展示它。在(a)中,你没有那种灵活性。随着新的“特色”文章的制作,旧文章将从附件视图中移出

    当然,对于案例(a)和(b),附件视图中显示的文章不会出现在页面视图中(这应该始终适用)


    对于案例(a),您应该在附件视图中使用nodequeue模块;对于案例(b),您可以继续使用CCK选择列表方法来提取特色文章,就像您当前在附件视图中所做的那样。为了防止页面视图中出现重复项,请使用或模块

    谢谢,尽管这不是我想要的。我希望在主视图中显示特色节点,在其下方的附件中显示非特色节点和特色节点,但不显示重复的项目。此外,该视图通过使用参数将内容从url分类为“音乐、艺术等”。每天大约有10-15篇新文章上传,所以手动排序不是一个选项。将查看视图排除,从描述中它似乎正是我要找的。再次感谢:)