2012-06-13 55 views
0

我有一个包含两个字段的视图。在其中一个我加载术语的名称,但我想删除想要的名称的一部分。因此,该视图必须加载该术语的名称,但没有一个部分。从视图字段中排除单词

E.g。一篇文章属于术语“例子 - 一”,我希望它只显示术语名称的“例子”部分,即i。即在这个“ - ...”部分之前。

回答

0

- 编辑 -
行,所以自认为最后部分始终是相同的,例如Example one - somethingAnother example - something,除了使用长度为- something(包括空格),并且使该数字(在这种情况下,为)为负数时,请执行与下面相同的操作。

简短版本:使用-12而不是。

<?php 
    print substr($value, 0, -12); 
?> 

--End edit--

有几种选择,这取决于术语本身是如何不断的。例如,做所有的条款与同一个词( - 一个 - 99等)?如果是这样,当将字段配置为“将该字段修整为最大长度”时,您应该看到一个选项,并且在单词示例的情况下,您只需将该长度设置为7(因为有7个字母在字示例)。

您还可以安装views_php模块,一个新的PHP字段添加到视图(全球:PHP - 右下全球:自定义文本选项),然后向PHP领域的配置的底部,你应看到和另一个低于输出

设置PHP领域的价值像这样:

return $row->term_field_goes_here; 

...更换term_field_goes_here与适当的 “替换模式”,你下框中看到。然后设置PHP领域的这样的输出

<?php 
    // $value is automatically assigned from the "Value" box, so we just tell it to 
    // print a substring of $value, aka $row->term_field_goes_here, keeping only 7 
    // characters, and starting from the 0th character ("E"). 
    print substr($value, 0, 7); 
?> 

希望帮助... :)

+0

谢谢你的答案。它们都以不同的词开头,这就是问题所在,但其他部分始终是相同的(“ - 某事”)。我想删除那个“ - 某事”。据我所知,如果第一部分是相同的,则使用您提供的两个代码。 – take2