Questions tagged «views»

视图模块允许使用灵活的查询生成器创建实体列表。

2
如果没有结果,是否可以显示视图消息?
我正在使用用户关系和活动提要,它从现有视图中显示操作。如果不存在视图,则意味着他们没有朋友,或者他们的朋友没有活动,那么是否可以显示一条没有结果的消息?
10 views 

5
hook_preprocess_page():如何区分视图页面?
我正在编写一个自定义模块,该模块仅需要在“视图”页面中插入一些JavaScript和CSS文件。 我正在使用hook_preprocess_page,但是我不能确定当前页面是否来自视图: function mymodule_preprocess_page(&vars) { var_dump($vars); //output: nothings that reference the views! if([view page]) { drupal_add_js([...]); drupal_add_css([...]); // Rebuild scripts $scripts = drupal_get_js(); $vars['scripts'] = $scripts; // Same for css } } 我知道我可以使用模板文件(page-my_view_page_path.tpl.php),但是只有在启用了模块的情况下,才必须包括js和额外的CSS;所以我喜欢把这些东西直接放在我的模块代码中。 有想法吗?
10 views  7  theming  javascript 

4
如何根据角色隐藏视图的字段?
在/ admin / people中,我想隐藏显示名称(即,显示名称一定不能出现在用户列表中),而只是针对特定角色。 在我的.module文件中,我尝试了以下挂钩: function hook_views_data_alter(array &$data) { kint($data['users']);die; } function hook_views_pre_render(\Drupal\views\ViewExecutable $view) { if($view->id() == 'myview'){ print_r($view->result);die; // kint($value->_entity->get('title')->value); } } function hook_views_post_render(\Drupal\views\ViewExecutable $view) { if ($view->id() == 'viewid') { // Set the view title. $field_name = $view->getFields(); } } function hook_field_views_data_views_data_alter(array &$data, \Drupal\field\FieldStorageConfigInterface $field) { $field_name = …
10 views  8  users 

2
如何从视图ID和显示ID获得显示名称?
我可以使用加载视图$view = Views::getView('my_view_id');,但是如何使用该对象加载display_title或说一个包含包含显示名称的信息的数组? 注意:不要将其与加载打印视图时可能使用的显示标题混淆,因为有一种方法可用于(getTitle())。
10 views  8 

2
公开的视图过滤器自动提交失去焦点
我已经设置了启用了ajax的视图。我还添加了带有自动提交功能的公开过滤器,以便在用户在文本字段中键入内容时,视图将自动更新。问题在于,当表单自动提交时,文本框会失去焦点。 我已经读到我需要将公开的表单分成一个单独的块,但是此选项不可用,因为我的观点本身就是一个块。 任何帮助将不胜感激,因为必须不断在文本框中单击才能继续键入,这确实是一个痛苦。
9 7  ajax  views 

3
Drupal 7视图上下文过滤器(分类法:摘要显示),显示可读的术语名称而不是术语ID
在我看来,我正在使用上下文过滤器(带有默认的“ 摘要输出 ”)来按分类术语过滤结果。 问题在于摘要结果是按分类法术语ID(包括节点计数)的列表而不是人类可读的术语ID名称进行分组的。 1(21) 2(16) 等等 是否可以通过不列出摘要的term-id而是列出term-id-name来更改(或挂钩)摘要的视图输出? 术语名称A(21) 术语名称B(16) (如果实际的请求URL保持不变,这对我来说并不麻烦。) 我的目标是为我的分类术语摘要创建一个更具可读性的输出格式,最终用户可以理解。

4
如何学习Views 3 API?
在哪里可以学习views 3 API?我可以使用ui来创建视图,但是我想在模块中使用API​​创建视图。此时,我将接受views 2 API。我看了看文档,并没有走太远。有人知道好的教程吗?
9 7  views 

3
面板还是上下文模块?
我能否请教一下两者之间的区别? 我正在建立一个使用“上下文”非常重要的网站。看完有关NodeOne的Page Manager的视频系列之后,我觉得Panels的“上下文”及其将参数安全地传递给Views的能力非常重要。但是,上下文模块具有一个执行类似类型功能的插件,称为“ 从上下文模块查看默认参数”。
9 views  panels  7 

2
禁用特定块的缓存
我想让页面继续受益于面向匿名用户的Drupal 8缓存机制,除了特定的块,该块应该在知道刷新页面是从Views生成的情况下,在每个页面刷新时更新。 在技​​术上可行吗?怎么样?
9 views  blocks  8  caching  users 

1
自定义过滤器处理程序中未触发查询方法?
我正在使用Views 3。 我需要创建一个处理日期范围的自定义视图过滤器。因此,我查看了示例并尝试模仿该行为,但遇到了一些麻烦。 看来,当我从扩展我自己的类时views_handler_filter,永远不会调用查询方法,但是如果我从扩展我的类,views_handler_filter_string则说它可行。 我必须忘记一些东西,但我被困在这里。 这是我的代码,如果有人可以看一下并向我建议发生了什么,我将不胜感激。 这是我的.views.inc文件: <?php class v3d_date_custom_filter extends views_handler_filter { var $always_multiple = TRUE; function value_form(&$form, &$form_state) { //parent::value_form($form, $form_state); $form['value']['v3d_date']['period'] = array( '#type' => 'select', '#title' => 'Period', '#options' => array( '7_days' => 'Last 7 days', 'yesterday' => 'Yesterday', 'today' => 'Today', 'custom' => 'Custom dates'), …
9 7  views 

6
如何通过视图和使用JS实现评论回复表单?
我们有一个使用视图的评论正文,其中有每个发布评论的名称,评论,图片和日期。在所有评论的末尾,我们都有一个评论主体,可以在其中添加评论。 现在,这对于线性注释系统非常有用,但是我们需要一个线程化系统。在视图中,我可以添加回复评论链接,但这会将我带到新页面。 我想要的是基于JavaScript的操作,例如,当单击“答复”按钮时,注释表单位于答复链接下方。通过视图可以做到吗? 如果没有,我最好的选择是什么? 更新 我启用了一个名为ajax注释的模块。这对于默认的drupal注释系统非常有效,但对于视图则不是那么有效。我添加了必需的类,并使基本功能正常工作,但是直到刷新页面后,新添加的注释才出现。该消息(排队等待)也在页面底部。 如果有人成功通过视图设置了此模块,请告诉我。

2
Views上下文过滤器如何工作?
我正在尝试再次围绕上下文过滤器展开讨论!我曾经用过它,但是我又完全陷入了困境。这是我想做的事情: 生成带有分类术语插入到此克隆页面中的克隆内容节点页面。 例如:EXAMPLE.com/white-shoes/blue 当用户到达/ white-shoes页面时,它将显示面向白色的原始节点页面。现在,如果用户落在/ white-shoes / blue上,它将显示相同的节点页面,但是这次将重写所有正文内容,将白色替换为蓝色。 在“ 视图”中,我必须创建一个页面显示,其路径为:%/% 现在,我将创建一个上下文过滤器来检索nid。我添加Content:nid作为上下文过滤器。我选择提供默认值,然后输入以下PHP代码: $ x = drupal_lookup_path('源',arg(0)); $ y = explode('/',$ x); 返回$ y 1 ; 该PHP代码基本上将URL的/ white-shoes部分转换为NID。但它不起作用。我通过终端通过drush ev测试了代码,确实得到了返回的结果,所以我知道它可以工作。 我对分类术语名称进行了相同的操作,并为此添加了上下文过滤器。这次,我选择“ 提供默认值”并选择“ 来自URL的原始值”,然后选择第二个参数。 如您所见,当我为上下文过滤器输入预览值:AAA / BBB / CCC时。我的默认值被忽略。它本来应该抓住第二个参数,但是只有第一个。查看SQL语句WHERE,当它应该是BBB时,它将得到AAA。 所以问题是我在做错什么,还是对我想要完成的事情有更好的解决方案?
9 7  commerce  views 

9
删除13000个节点
我在Drupal 7站点中有大约13000个要删除的节点。我尝试过“ 视图批量操作”模块一次删除500个节点,但是超时。我一次只能删除50个节点。 如何一次删除50个以上的节点?
9 views  nodes 

9
视图3以编程方式删除暴露的过滤器
我有几种节点类型,每种类型都引用了不同的分类术语词汇。对于显示类别,我使用taxonomy_display模块。 例如,我们有两类:球杆和台球。 提示有价格,价格和木质过滤器。但是球没有木质过滤器。 因此,如果taxonomy_term tid引用了台球词汇,则需要删除木质过滤器。 因此,我需要以编程方式删除许多公开的过滤器之一。 function modulename_views_pre_view(&$view, &$display_id, &$args) { // Some custom logic wich field_info_instances checking ... $filter_field = 'filter_id'; // Removes from everywhere where i can find filter or filters properties unset($view->display[$view->current_display]->display_options['filters'][$filter_field]); unset($view->display[$view->current_display]->handler->options['filters'][$filter_field]); unset($view->display_handler->display->display_options['filters'][$filter_field]); unset($view->display_handler->options['filters'][$filter_field]); } 筛选器字段删除成功,但是我有php通知: Notice: Undefined index: field_wood_reference_tid in function views_handler_filter_term_node_tid->exposed_validate() 我也尝试删除hook_pre_execute()中的字段,但结果相同: function modulename_views_pre_execute(&$view) …
9 7  views 

2
有什么办法按周数过滤吗?
Drupal 7,意见3 我配置了几个视图,这些视图显示了多年的数据。使用日期字段作为过滤条件按年份过滤数据。对于每一年,我都有附件视图,需要按星期进一步过滤。我想知道是否有任何方法可以添加一个过滤条件来按周编号(即第1周到第52周)进行过滤,而不是确定每年几周的确切日期并将其手动输入为过滤条件。每个视图的唯一需要设置的日期是年份,其余日期根据星期数自动发生。 我在表视图中按年和周汇总了大量数据,其中每列都是附加的视图附件,并尝试避免必须手动输入每年的星期日期过滤器。 有人对此有任何建议/提示吗?非常感谢。 这是我当前正在使用的代码: function x_week_start($date) { $ts = strtotime($date); $start = (date('w', $ts) == 0) ? $ts : strtotime('last sunday', $ts); return date('Y-m-d', $start); } function x_week_end($date) { $ts = strtotime($date); $start = (date('w', $ts) == 0) ? $ts : strtotime('last sunday', $ts); return date('Y-m-d', strtotime('next saturday', …
9 7  views 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.