Code | 計算Views生成資料的總數

Views用來「列資料」很棒,可是如果要做一些統計、計算,雖然有些模組可以用(像是Views Cul等等),但其實都不是很好的解決方案。不過Views的API非常齊全,所以只要了解Views的寫法,也是可以不需要自己寫query喔!

以下範例是算出某個Views的total rows,也就是該Views的總數。
實際應用舉例:
獎金獵人的「目前進行中比賽有XXX件」這樣的區塊。

<?php
$view = views_get_view( 'VIEWS_NAME' );
$view->get_total_rows = TRUE;
$view->execute();
$count = $view->total_rows;
 
print '目前進行中比賽有' . $count . 'XXX件';
?>

如果你的狀況需要設參數的話:

<?php
$view = views_get_view( 'VIEWS_NAME' );
$view->set_arguments( array( 1, 2, 3 ) ); //參數設在這
$view->get_total_rows = TRUE;
$view->execute();
$count = $view->total_rows;
 
print $count;
?>

如果希望最後輸出可以依照總數改變的話:

<?php
$view = views_get_view( 'VIEWS_NAME' );
$view->set_arguments( array( 1, 2, 3 ) ); //參數設在這
$view->get_total_rows = TRUE;
$view->execute();
$count = $view->total_rows;
if ($count > 0) {
  $output = format_plural($count,
    '只有 1 個',
    '總共有 @count 個');
  print $output;
}
?>

回應

你好
我想請教您有關drupal的問題
如果用signup模組要同時寄通知信給發文者和系統管理員要怎麼完成呢?
我現在想用rules來設定但似乎沒有和signup相關的動作
如果有時間的話可以提供給我一些提示嗎?
打擾了

謝謝

你可以用Rules來做這個需求

感謝站長的分享,又會唱歌又會寫程式,真是太強了~~

rJktxh xikzusrkijci, [url=http://yikvduomwdjl.com/]yikvduomwdjl[/url], [link=http://khtveunfuuuf.com/]khtveunfuuuf[/link], http://negbxviarpop.com/

發表新回應

這個欄位的內容會保密,不會公開顯示。
  • 自動將網址與電子郵件位址轉變為連結。
  • 可使用的 HTML 標籤:<a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • 自動斷行和分段。

更多關於格式選項的資訊