如何在未格式化的视图模板中使用字段变量? -- 7 领域 和 views 领域 和 entities 领域 和 theming 领域 drupal 相关 的问题

How to use field variables in un-formatted view template?


2
vote

问题

中文

如果找到此,但我无法设法将其应用于我的情况。开始。 (我是php编码和drupal的新手。)

我想将HTML链接添加到我未格式化的视图模板的每一行中。对于每行,我希望相关内容的链接。

我使用devel dpm来显示unformatted.tpl.php中的变量。但我找不到链接字段的变量。 (我添加了内容:链接字段在视图中,它隐藏在一起。)

我目前的理解是我需要在相关的预处理函数中设置变量,这可能看起来像这样:

   function mytheme_preprocess_views_view_unformatted(&$variables) {     $link = Location of link field variable }   

然后在视图模板中使用它:

  <?php if (!empty($title)): ?>   <h3><?php print $title; ?></h3> <?php endif; ?> <?php foreach ($rows as $id => $row): ?>   <div<?php if ($classes_array[$id]) { print ' class="' . $classes_array[$id] .'"';  } ?>>     <?php print $row; ?>     <?php print $link; ?>   </div> <?php endforeach; ?>   

但我找不到链接信息,我找不到类似的例子,所以我可能会错过错误。我怎么做到这一点,是我的基本理解好吗?

英文原文

If found this, but I can't manage to apply it to my case. Here goes. (I'm new to PHP coding and Drupal.)

I want to add a HTML link into each row of my unformatted views template. For each row I want the link for the relevant piece of content.

I used the devel dpm to reveal the variables in the unformatted.tpl.php. But I can't find a variable for the link field. (I've added the Content: Link field in views and it's hidden.)

My understanding at the moment is I'll need to set the variable in the relevant preprocess function, which might look like this:

 function mytheme_preprocess_views_view_unformatted(&$variables) {     $link = Location of link field variable } 

And then use it in the views template:

<?php if (!empty($title)): ?>   <h3><?php print $title; ?></h3> <?php endif; ?> <?php foreach ($rows as $id => $row): ?>   <div<?php if ($classes_array[$id]) { print ' class="' . $classes_array[$id] .'"';  } ?>>     <?php print $row; ?>     <?php print $link; ?>   </div> <?php endforeach; ?> 

But I can't find the link information and I can't find similar examples so I've probably gone badly wrong. How would I do that and is my basic understanding ok?

           

回答列表

0
 
vote
vote
最佳答案
 

好的,所以我设法搞定了:

  span0  

我试图使用:

  span1  

但它保持抛出未定义的索引错误,即使它是来自DPM的有效路径。

行(阵列) ID(值)

id(顶部工作解决方案中使用的变量)未在我的DPM中显示。是,因为我正在为视图调用它,所以未格式化的tpl和id是一个全局变量?

 

Ok so I've managed to get it working with:

<?php print $view->style_plugin->row_tokens[$id]['[view_node]']; ?> 

I tried to use:

<?php print $view->style_plugin->row_tokens[$rows['id']]['[view_node]']; ?> 

But it kept throwing undefined index errors, even though it was valid path from DPM.

rows (array) id (value)

id (the variable I used in the top working solution) didn't show in my DPM. Is that because I was calling it for the views unformatted tpl and id is a global variable?

 
 
0
 
vote

以前的答案没有为我工作,因为 row_tokens 数组出于某种原因是空的。虽然我设法使用以下内容访问该字段:

  $view->style_plugin->row_plugin->nodes[$view->result[$id]->nid]->my_field_name   

此处 $id 是行索引,可用于使用 99887663 数组获取nid。

 

Previous answer didn't worked for me, as the row_tokens array was empty for some reason. Though I managed to access the field using the following:

$view->style_plugin->row_plugin->nodes[$view->result[$id]->nid]->my_field_name 

Here $id is the row index, and can be used to get the nid using the $view->result array.

 
 

相关问题

1  域访问问题w.r.t查看admin用户以外的内容  ( Domain access issue w r t viewing a content other than admin user ) 
我正在使用带有子域和内容创建的域访问模块。 我能够创建内容,但我无法查看用户创建的内容,它说 You are not authorized to access 这个页面,其中我能够创建和查看内容。 在我的另一个本地站点中,我尝试了域访问模块以及我能够克定和查看和编辑内容的其他角色。我没有任何问题。只有我的另一个站点只...

0  是否有用于添加纬度,经度,Compas坐标等的字段类型的模块?  ( Is there a module for adding field types for latitude longitude compas coordin ) 
我的谷歌搜索技能很低,或者D7没有这样的模块。我想创建一个内容类型,用户可以在海上添加他的位置:纬度,经度,结,标题(000°)和其他坐标。你知道这个模块吗? ...

0  在安装配置文件中更改“我的帐户”链接  ( Alter the my account link in installation profile ) 
嗯,我已经尝试了以下代码将属性插入安装Profile上的用户帐户链接。它适用于所有其他菜单项(主页[]),除了用户帐户链接,可能是由于原因它再次重建。 <?php $path = 'user'; // Check for user (My account) menu item. $existin...

6  如何使用视图_PHP模块过滤视图结果?  ( How to filter views result using the views php module ) 
我有2个整数字段视图中,第一个字段是'field_code',第二个字段是'field_rank', 最后我希望筛选视图结果,具有视图_PHP模块。 我使用这个代码,但它不起作用, $math = ($row->field_code / $row->field_rank) * 100; if ($math < '...

0  如何将节点附加到用户配置文件?  ( How to attach node to user profile ) 
如何使用配置文件2 (或其他一些其他)将节点附加到用户配置文件办法)?它说在这里它是可能的,但它确实如此不是说如何。 ...

1  如何测试mollom - 想要测试Mollom_Form_Moderation?  ( How to test mollom want to test mollom form moderation ) 
我有一种自定义形式,我用mollom保护。一旦验证,表单会导致正在创建的实体和发送一些电子邮件。 如果表单有效,但mollom表示它应该被审核,我需要将实体用其"审核" 字段集,但没有发送电子邮件(我会一旦管理员执行此操作说没关系)。 我有mollom工作和测试模式。把"火腿" 在作品中。把"垃圾邮件" 放在停止它死...

13  在保存节点之前,在自定义表单中晶体地检测更改的字段  ( Generically detecting changed fields in a custom form prior to saving a node ) 
我使用field_attach_form()将某些字段从内容类型添加到自定义表单中。提交表单时,我通过调用#validate和#submit回调的字段_attach_form_validate()和字段_attach_submit()处理这些字段。 在那一点上,我想将后发后,准备好的节点对象与原始节点进行比较,如果任...

0  如何在管理/结构/类型/管理/ <content_type>上制作配置字段粘贴?  ( How to make config fields stick at admin structure types manage content type ) 
我向所有内容类型添加配置选项。我现在有TextField和复选框。 如何保存我在提交时在文本域和复选框的状态中写入的内容?我需要改变此表格的提交功能吗? function neil_misc_form_node_type_form_alter(&$form, $form_state) { global $u...

1  hook_block_view未被调用  ( Hook block view not being called ) 
我有一个自定义模块,有一些自定义块。我的块在块页面中显示,以便它们正在注册 99887661 。 但我的模块没有在屏幕上显示任何东西。我在 hook_block_view 顶部添加了 dpm('hit') 为我的模块,但没有显示任何东西。 我已将 hook_block_view_alter 添加到我的模块,并查看那里...

1  我可以在简介开发中使用哪种钩子?  ( Which hooks can i use in profile development ) 
哪些钩子可以在配置文件分布开发中提供?除 hook_install_tasks() 之外,我可以使用哪些其他钩子? ...

0  D7中可授予的节点内容类型  ( Votable node content type in d7 ) 
我正在尝试弄清楚创建内容类型的最佳方式,允许创建可以分配给组的节点,并且可以与该组中的其他节点进行竞争。我开始使用字段API,节点API和投票API来编写模块,但我想检查一下我是否可以在进入项目之前使用现有模块来执行此操作。 例如,我想创建一个名为"参赛者" 的内容类型,并给出它可以分配的内容3型不同的括号。然后,当...

1  服务模块 - 访问REST URL时500个内部服务器错误  ( Services module 500 internal server error when accessing rest url ) 
我创建了一个服务端点,但随时我访问REST URL,例如, http://www.mysite.com/endpoint 我在Firebug控制台中获得了WSOD,以下内容: "NetworkError: 500 Internal Server Error" 在dblog中没有错误。 Apache错误日志...

2  我的页面是hook_admin_paths(),但没有显示管理主题  ( My page is in hook admin paths but doesnt show admin theme ) 
function mymodule_admin_paths() { $paths = array( 'admin-dvr/*' => TRUE, ); return $paths; } 我有一个模块,它生成一个页面,我希望该页面与管理主题主题。我实现了上面的钩子,以便当我浏览到 admi...

-1  如何为在Drupal 7上使用视图播放的每个视频设置特定超时?  ( How to set a specific timeout for each video played with views slideshow on drup ) 
我已经到了幻灯片的问题。 我有图像和视频在我的幻灯片上播放。 然而,当视频播放时,幻灯片将在视频结束前旋转。 因为我知道幻灯片不可能知道视频结束时,我做了许多研究能够为每个播放的视频设置动态超时。 我来了这个帖子: https://drupal.org/node/1541254 这篇文章确切地描述了我需要做的事情。...

2  Drupal 7日期 - 如果已经存在数据,有没有办法改变现场设置?  ( Drupal 7 date is there a way to change field settings if there is data in it a ) 
目前我正在使用drupal 7的日期模块,我已经在现有日期字段中拥有存储的数据。我想通过添加"重复日期" 来对日期字段进行更改,但显然我无法在已经存在数据。我想出的选项是: 为内容类型创建一个完整的新日期字段,其中包含附加的"重复日期" 功能。然后将所有旧日期复制到新字段中(我不确定如何轻松执行此操作) 通过...

4  在Drupal 7中,其中存储的现场设置数据在哪里? (不是现场数据)  ( In drupal 7 where is field settings data stored not the field data ) 
我试图通过phpmyadmin手动更新我的字段的数据表结构,因为我无法通过字段设置页面修改它,因为我有数据。事是,我在哪里更新"字段设置" 来包含这些表结构的变化? ...

1  您可以根据当前用户角色过滤视图用户列表结果  ( Can you filter views user list result based on the current users role ) 
是否可以使视图用户列表的结果仅包含具有当前用户的特定角色的用户? 我不熟悉看法,但它似乎符合比标配的更好的看起来和更具可用的用户列表,而不是用Drupal来说。但是,我需要将用户列表过滤。 i设置由特定角色标识的多个用户组(如组Member - A组)。该组的管理员用户具有额外的管理角色(如组管理器),但在使用...

1  规则组件的特定权限  ( Specific permissions for rules components ) 
我创建了两个规则组件,但我找不到任何模块来为角色设置特定权限。 我想让一些角色的用户允许运行第一个组件但不是第二个组件。 谢谢。 ...

0  旁路自定义模块中的权限  ( Bypass permissions in custom module ) 
我已经写了一个自定义模块,当提交WebForm并将其邮寄给管理员时,会生成PDF。我正在使用打印模块来生成pdf。问题是,在生成PDF时似乎使用用户的权限,而不是管理员。这通常可以用于经过身份验证的用户,但对于访客来说,它只是完全失败。 我已启用"访问PDF版本" 和"访问自己的WebForm提交" 的所有用户(匿名...

3  基于国家的城市名单选择  ( Country based city list selection ) 
我可以使用分层选择模块,但它包含很多在输入数据时的手动工作。我想要所有国家/地区他们的城市名单。怎么做 ? 是否有任何模块,有助于根据国家选择显示城市列表?有一种自定义方式吗?提前谢谢 ...




© 2021 it.wenda123.org All Rights Reserved. 问答之家 版权所有


Licensed under cc by-sa 3.0 with attribution required.