Drupal Views - 对于user:id字段,匹配数组的内容

时间:2011-04-17 16:37:14

标签: php drupal drupal-6 drupal-views

我有一组用户ID,我需要浏览视图中的user: id字段,为匹配和不匹配的结果添加一些特定的HTML。

所以我猜这样的东西需要进入views-view-field - uid.tpl.php:

<?php if (//Field content matches an array value): ?>
<span class="friend"><?php print $output; ?></span>
<?php endif; ?>

<?php if (//Field content doesn't match an array value): ?>
<span class="not-friend"><?php print $output; ?></span>
<?php endif; ?>

有人可以帮我填补空白吗? :)

1 个答案:

答案 0 :(得分:2)

假设$ ouput只是一个代表uid的整数(而不是HTML标记),你可以这样做:

<span class="<?php if(!in_array($output, $your_array)): ?>not-<?php endif; ?>friend">
    <?php print $output; ?>
</span>

请参阅php in_array()

但是,$ output可能是HTML。如果是这种情况,你应该使用$ row而不是$ output。 要查看$ row包含的内容,我喜欢在模板文件中执行此操作:

<!-- <?php echo print_r($row,true); ?> -->

(然后在浏览器中查看源代码)

另外,我建议你不要在模板文件中执行此操作,因为它将逻辑与主题联系起来......查看Views Customfield - 它会让你在自定义字段中执行PHP ...如果你把它放在UID下,并从显示中排除UID,你可以使用$ data对象而不是$ row或$ output来访问UID并执行我在自定义字段中获得的相同代码。