在 Drupal 视图中显示行数

发布于 2024-10-12 01:28:27 字数 113 浏览 1 评论 0原文

如何显示 Drupal 视图中显示的总行数以及当前显示的总行数?

print $GLOBALS['current_view']->total_rows; 不起作用

How can I display the total number of rows shown in a Drupal view as well as the number of rows out of the total currently being shown?

print $GLOBALS['current_view']->total_rows; does not work

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

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

发布评论

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

评论(3

一身骄傲 2024-10-19 01:28:27
  $view = views_get_view('MY_VIEW_NAME');

  $view->set_display('MY_DISPLAY'); // like 'block_1'

  $view->render();

  print sizeof($view->result);
  $view = views_get_view('MY_VIEW_NAME');

  $view->set_display('MY_DISPLAY'); // like 'block_1'

  $view->render();

  print sizeof($view->result);
等待我真够勒 2024-10-19 01:28:27
print sizeof($view->result);

不起作用,因为它返回行数,而不是总结果数。因此,如果您有寻呼机,则此方法不起作用。您需要

print $view->total_rows;

另一个更好的解决方案是实现 hook_views_pre_render()

function MYMODULE_views_pre_render(&$view) {
  if ($view->name == 'MY_VIEW') {
     $view->set_title(t('Search (@count results)', array('@count' => $view->total_rows > 0 ? $view->total_rows : 'No')));
   }
}
print sizeof($view->result);

does not work, because it returns the number of rows, not the number of total results. So if you have a pager, this doesn't work. You'll need

print $view->total_rows;

Another, even better solution would be to implement hook_views_pre_render()

function MYMODULE_views_pre_render(&$view) {
  if ($view->name == 'MY_VIEW') {
     $view->set_title(t('Search (@count results)', array('@count' => $view->total_rows > 0 ? $view->total_rows : 'No')));
   }
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文