大家。我对视图2有一个问题。我有一个视图,行的样式设置为字段(只有标题字段)。我想用逗号分隔列表显示这些标题。 例如:
哈萨克斯坦,英国,中国,韩国
尝试这样做:
foreach($fields['title']->content as $titles) {
$zagolovki[] = $titles['view'];
}
$title_list = implode(', ', $zagolovki);
print $title_list;
但它不起作用 - 说参数错误。请帮我一个人用逗号分隔列表在视图中显示节点标题。谢谢!
答案 0 :(得分:1)
我快速查看了视图模块附带的views-view-fields.tpl.php
,并说它
/*
* - $view: The view in use.
* - $fields: an array of $field objects. Each one contains:
* - $field->content: The output of the field.
* - $field->raw: The raw data for the field, if it exists. This is NOT output safe.
* - $field->class: The safe class id to use.
* - $field->handler: The Views field handler object controlling this field. Do not use
* var_export to dump this object, as it can't handle the recursion.
* - $field->inline: Whether or not the field should be inline.
* - $field->inline_html: either div or span based on the above flag.
* - $field->separator: an optional separator that may appear before a field.
* - $row: The raw result object from the query, with all data it fetched.
*/
所以我认为$ fields是你应该迭代的东西。如果您要调试$fields
的结构,请安装devel-module并使用dpm()或dsm()来显示$field
的内容。也许拿你编辑的模板(应该是views/theme
文件夹中的view-module模板之一)看看那里发生的事情。
答案 1 :(得分:0)
但是它说错误发生在哪里? nonsenz可能是正确的$fields['title']->content
不是数组。仅用于调试,请尝试添加
print("array content: "+ is_array($fields['title']->content));
在foreach之前。如果您知道$ fields是一个小的嵌套结构,您可以尝试
print(str_replace("\n","<br/>",print_r($fields,true));
查看其中的确切内容,以便您可以验证您尝试迭代的内容实际上是可迭代的。
答案 2 :(得分:0)