在Drupal视图参数中,如何获得nodequeue中的节点总数?

在Drupal视图参数中,如何获得nodequeue中的节点总数?,drupal,views,arguments,Drupal,Views,Arguments,我在一个网站上工作,这是一个由数千张唱片集组成的数据库,我正试图创建一个“当日专辑”块。我的解决方案是创建特定记录的nodequeue,创建一个将一年中的当前日期作为参数传递的视图,然后使用此值调用具有相同编号位置的nodequeue项。为此,我在“Nodequeue:Position”参数设置中提供一个“Default参数”作为PHP代码。以下是我使用的代码: $nodequeueTotalNodes = 120; $dayOfTheYear = date("z"); $nodeQueuePo

我在一个网站上工作,这是一个由数千张唱片集组成的数据库,我正试图创建一个“当日专辑”块。我的解决方案是创建特定记录的nodequeue,创建一个将一年中的当前日期作为参数传递的视图,然后使用此值调用具有相同编号位置的nodequeue项。为此,我在“Nodequeue:Position”参数设置中提供一个“Default参数”作为PHP代码。以下是我使用的代码:

$nodequeueTotalNodes = 120;
$dayOfTheYear = date("z");
$nodeQueuePosition = $dayOfTheYear % $nodequeueTotalNodes;
return $nodeQueuePosition;
上面的代码让我很满意,但我的问题是,每当我从nodequeue添加或删除一个项目时,我都必须手动更改$nodequeueTotalNodes的值


是否有办法从我的队列中提取节点总数,以替换上面代码中的“120”?

nodequeue\u nodes表包含队列中的所有节点。类似这样的操作应该可以实现,其中qid是队列id:

$nodequeueTotalNodes = db_result(db_query('SELECT COUNT(nid) FROM {nodequeue_nodes} WHERE qid = %d', $qid));

如果您使用的是子队列,则可以使用一个名为sqid的列。

nodequeue\u nodes表包含队列中的所有节点。类似这样的操作应该可以实现,其中qid是队列id:

$nodequeueTotalNodes = db_result(db_query('SELECT COUNT(nid) FROM {nodequeue_nodes} WHERE qid = %d', $qid));
如果您使用的是子队列,那么可以使用一个名为sqid的列