我有一个包含多个值的文本字段。该字段并不总是包含任何值。该字段显示时需要有一个标签。
IOW,这一行应该像下面的一行
CoAuthor: X人,Y人
或
CoAuthor: Person X
下面是我的问题:当我使用视图UI添加标签时
CoAuthor: Person X,CoAuthor: Person Y
当我使用模板时,
print $fields['field_coauthor']->content;
当我空的时候我不能隐藏这个领域,所以我结束了
CoAuthor:(没有值)
有没有办法向模板中添加一个条件,这样我就不会有标签而没有数据?或者将视图配置为包含标签一次.而不是把它加到每个条目上?
发布于 2013-10-30 18:36:44
实际上,我对您的View结果感到有点困惑,因为字段的默认设置应该给您:
CoAuthor: X人,Y人
当有不止一个作者时(我想这是你想要的吗?)
而且由于视图也有一个设置:“隐藏如果空”在*没有结果行为下“,所以使用字段来获得正确的结果应该是很简单的。
总之,我是这样使用视图来设置这个的:
首先,我单击Format - Show: Content并将其切换到Field。
第二,勾选提供默认字段包装元素,并隐藏空字段。
第三,在“字段”下,单击“添加”并添加"CoAuthor“字段。我将创建一个标签,并在标签后面放置一个冒号。在多个字段设置下,我勾选显示同一行中的所有值。我还勾选了简单分隔符,并确保它是,
(逗号后面是空格,这是默认的).Then,在“无结果”行为下,我将“没有结果”文本保留为空,如果为空则勾选“隐藏”,如果为空则隐藏重写。
第四,我导航到格式显示:设置和勾选,以确保CoAuthor是一个内联字段。
在完成所有这些操作之后,如果没有CoAuthor,输出应该是空的,对于其他两种情况:
CoAuthor: Person X CoAuthor: Person X,Person Y
至于使用模板,您应该能够将生成输出的PHP封装在一个检查非空字段的测试中,例如:
if (!empty(print $fields['field_coauthor']->content)) {
我不知道你发布的模板片段是从哪里来的,所以我还没有发布完整的代码,但我希望你知道这个想法。
https://drupal.stackexchange.com/questions/90756
复制