问题标签 [views2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2911 浏览

forms - 如何使用 drupal 6.x 视图 2 向视图添加表单?

我想在视图顶部添加一个 drupal 表单。视图不需要接收表单的结果,但表单的 _submit 钩子应该能够读取表单所在视图的第一个参数。

添加这个的最佳位置在哪里?自定义模块或模板文件以及必要的文件名/挂钩是什么?

0 投票
5 回答
2445 浏览

drupal - Drupal 6 - Views2 - 如何构建非节点视图

我需要在非节点的drupal中构建视图,实际上是drupal外部的对象。我正在调用的 api 将我传回一个 stdClass 对象。

任何人都有关于如何让 Views2 显示非节点对象的想法?

0 投票
3 回答
1662 浏览

drupal - Drupal:从视图 2 中的多个节点类型检索数据?

...或者,换句话说,如何像在 SQL 中那样创建一个简单的连接?

假设我想要以下信息:

举个例子:

  • 一个人的全名
  • 一个人的爱好。

他的全名在(内容配置文件)节点类型“name_and_address”中,他的爱好在“hobbies”中。

在 SQL 中,我会通过 node.uid 将它们链接在一起。我已经看到了一些关于使用关系的内容,但这与用户节点引用有关。我只想要一种内容类型和另一种内容类型的同一个用户。

现在我怎样才能在 1 个视图中获得他的名字和他的爱好?

0 投票
1 回答
318 浏览

php - 在视图 2 (Drupal 6) 中检索被覆盖的主题钩子的名称

我创建了一个视图(让我们称之为my_view)。

在主题:信息部分中,如果我已经注意到建议的模板名称之一(views-view--my-view--default.tpl.php(或接近该名称)),并使用该名称创建了我自己的模板文件。

这一切都很好,当我访问主题注册表时,我可以看到那里有一个带有模板名称的钩子 ( views-view--my-view--default)。然而,这个钩子的类型字段是“引擎”而不是“模块”。我认为这是为了查看视图本身的主题?

我想实现hook_registry_alter修改这个主题钩子(以及以相同方式创建的其他主题),但我不知道如何检索这些钩子的列表。

我尝试使用 array_keys( views_theme()) 来取回所有视图挂钩,但此列表不包含由覆盖模板文件创建的挂钩。它只包含默认的钩子,如 views_views_field 等

有没有办法恢复以这种方式覆盖的视图主题挂钩列表?

0 投票
3 回答
1481 浏览

drupal - Drupal:更改视图参数

我进行了广泛搜索以找到解决此问题的有效解决方案,但找不到。

我想要做的是更改传递给视图的参数,因为我希望pathauto清洁的分类术语作为参数工作。我有一个将清理后的术语转换回原始术语的代码,但不能让视图使用它。

我看到有些人改变了它,hook_preprocess_views_view(&$vars)但在我的例子中(Views 2.11)有一个论点在$vars实例中出现了很多次,它不是这样的。

谁能帮我改变这个论点?

0 投票
1 回答
1165 浏览

drupal - Drupal6 视图:输出“分类:所有术语”字段,其中两个术语作为两个链接

简而言之:我正在制作一个自定义视图,我想要一个列出与 NID 关联的两个分类术语的字段作为两个不同的链接输出,这些链接返回视图的参数(term1 到 view/term1,term2 到 view/term2。相反,它输出为一个聚合链接(term1 和 term2 输出视图/term1%0Aterm2.

我做错了什么还是不可能?

详尽的:

我正在drupal ubercart 站点中构建产品视图(页面输出位于http://example.com/products),因为内置的ubercart 目录psuedo-view 不适合我。其中一些产品属于多个分类术语(在同一个词汇表中) - 例如,product_example1 属于术语 blue 和 glowinthedark,product_example2 属于 red 和 glowinthedark,product-example3 属于 blue。

我创建了一个参数,它根据以下术语限制视图:products/red、products/glowinthedark 等返回我制作的这个漂亮视图,但仅适用于与分类术语 red、glowinthedark 等相关的产品 - 所以可以正常工作应该。意见是真棒!

现在,我希望此视图中显示的每个产品都链接到生成的产品/[术语] 页面。输出字段“分类:所有术语”作为替换参数 products/[tid] 的链接适用于一个术语(product_example3 的字段适用于它的一个术语:/products/blue(views are awesome!),但是,这是问题所在,它不能用于两个术语(或者我假设两个术语以上)。无论该字段是作为列表输出还是使用简单的分隔符输出都是如此。因此,对于 product_example 之一,该字段同时列出了术语 blue 和 glowinthedark (正确分隔为列表项或使用选择的“,”简单分隔符),但两个术语都输出相对链接 products/blue%0Aglowinthedark。

明白了吗?奇怪的是,我无法用谷歌搜索任何有类似情况的人,尽管我无法想象我是第一个遇到这种情况的人。我可能会放弃,因为它并不是那么重要,我可以想到几个不太令人满意但仍然可行的解决方法,但我认为你们都可能有一些见识。唯一一个给我希望的是选择“将”链接到其术语页面“复选框时,视图成功输出两个单独的行项目,其中包含两个单独的术语页面的链接。

我也在 Drupal.org 上发布了这个问题。谢谢你的时间!

0 投票
2 回答
431 浏览

php - 如何为 Views 2 (Drupal 6) 定义自定义“notafield”处理程序

我只能找到预定义处理程序的文档。我想我必须重写其中一个处理程序类,但我实际上必须重写哪些方法?我在某处读到需要向 Views 注册 Views 2 的新处理程序。在哪里以及如何?

我想定义一个不是数据库字段的字段,而是一个从其他字段计算的字段(对未来日期/时间的倒计时)。

编辑: 我说的是一个自定义模块,它已经有两个 Views 2 字段(两个时间戳)。现在我想再定义两个字段,它们不是真正的 DB 字段,而是根据实际字段计算得出的。所以我们在这里谈论hook_views_data()。我不想为具体视图定义一个具体字段,而是定义一个可由模块用户用于任意视图的字段。

问题是,这些字段是如何定义的?如果我将该字段声明为notafield并设置非标准处理程序函数,则会在视图配置 GUI 中收到错误Broken/missing handler。我可以从视图代码中猜到,我可能需要重写其中一个预定义的处理程序类(与视图 1 中的全局函数相反)。但是我需要重写哪些方法,将新类放在哪里,视图如何知道在哪里可以找到该类?我找不到自定义字段处理程序或查询处理程序的任何文档。

编辑:我在这里
记录了整个事情。

0 投票
1 回答
32 浏览

drupal-6 - Drupal:此视图创建的页面上未显示视野

我的视图中有一个 ImageField。它不会从输出中排除。它在预览中呈现。但是当我打开视图创建的页面时 - 它没有出现在那里。我该如何诊断这个问题?(所有缓存都关闭,drupal v6,views v2)

谢谢。

0 投票
1 回答
294 浏览

drupal - 无法为 Views2 创建自定义处理程序

基本上我想创建一个自定义处理程序来反序列化一个名为生日的数据库字段。

我已经设法正确输出使用默认views_handler_field 序列化的字段。不幸的是,当我尝试创建自定义处理程序时,我收到以下消息:

错误:drappsprofiles > 生日的处理程序不存在!

这是文件结构:

这是 drappsprofiles.module

这是 drappsprofiles.views.inc

drappsprofiles_handler_field_birthday.inc

似乎没有阅读 drappsprofiles_handler_field_birthday.inc,尽管我不知道为什么。

任何帮助,将不胜感激。(我已经在这附近待了 2 周!)

0 投票
1 回答
1913 浏览

php - 如何覆盖drupal视图寻呼机查询?

我正在使用 drupal 6 并查看 2 -

我使用此文档为我的视图创建了一个自定义过滤器

http://www.chadcf.com/blog/creating-custom-filters-drupal-and-views

每件事似乎都运行良好只有一个问题 -

我的分页不起作用(没有出现在某些操作员身上)

让我简要解释一下我想要实现的目标 -

在我的页面视图中,我已经有一些带有运营商下拉菜单的公开过滤器,并且我创建了一个没有运营商下拉菜单的自定义公开过滤器。

我的要求是将一个现有的过滤器功能与我的自定义过滤器合并。意味着两个过滤器将一起工作以获得所需的结果。但是一个过滤器由现有字段组成,如果我从下拉列表中选择它的任何一个运算符,那么它的值将包含在 where 子句中,这是我不想要的。所以我通过使用从视图查询中完全删除了查询块

现在在我的站点/all/modules/mymodule/inc/mymodule_filter.inc

其中添加 where 子句以查看查询。

使用上述过程,我成功地扩展了默认视图行为并获得了所需的结果,但是对于某些操作员分页链接没有出现,即使我知道数据库中存在更多记录。

我知道为什么会这样——因为我的视图分页脚本不知道我所做的更改。

我的问题是如何覆盖查看寻呼机查询?

任何帮助将不胜感激。