使用视图 2 (Drupal 6) 按节点参考字段对节点进行排序

发布于 2024-10-17 08:23:04 字数 263 浏览 1 评论 0原文

Drupal 6.20,视图 6.x-2.12。

我有一个列出 A 类型节点的视图,每个节点都有一个节点引用字段 mynoderef_field。我可以显示 A.titleA.mynoderef_field,但它们是随机显示的。我想按 A.mynoderef_field 对节点进行排序,但它不会显示为可能的“排序依据”字段。

我用谷歌搜索了一段时间,没有找到答案。有什么想法吗?

谢谢

Drupal 6.20, Views 6.x-2.12.

I have a view listing nodes of type A, each one having a Node reference field mynoderef_field. I can show A.title and A.mynoderef_field, but they show up randomly. I want to order the nodes by A.mynoderef_field, but it does not appear as a possible "Order by" field.

I googled for a while, and couldn't find the answer. Any idea?

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

dawn曙光 2024-10-24 08:23:04

这应该可以解决问题:

<?php
function modulename_views_pre_render(&$view) {
  if ($view->name == 'field_name') {
    $new_result = array();
    $nids = explode(',', $view->args[0]);
    foreach ($nids as $nid) {
      foreach ($view->result as $res) {
        if ($res->nid == $nid) {
          $new_result[] = $res;
          break;
        }
      }
    }
    $view->result = $new_result;
  }
}
?>

this should do the trick:

<?php
function modulename_views_pre_render(&$view) {
  if ($view->name == 'field_name') {
    $new_result = array();
    $nids = explode(',', $view->args[0]);
    foreach ($nids as $nid) {
      foreach ($view->result as $res) {
        if ($res->nid == $nid) {
          $new_result[] = $res;
          break;
        }
      }
    }
    $view->result = $new_result;
  }
}
?>
若无相欠,怎会相见 2024-10-24 08:23:04

我通过使用节点 A 和 mynoderef_field 之间的关系来实现此目的。添加节点标题以排序条件并确保选择关系。

I got this to work by using a relationship between the node A and mynoderef_field. Add node title to sort criteria and make sure the relationship is selected.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文