【问题标题】:Drupal Ubercart how to get cart total?Drupal Ubercart 如何获得购物车总数?
【发布时间】:2018-05-07 00:46:57
【问题描述】:
【问题讨论】:
标签:
php
drupal-7
ubercart
【解决方案1】:
我认为没有原生的 ubercart 功能。但是,您可以查看 uc_cart_checkout() 函数的内部,以查看结帐页面上的总计显示方式。
我根据 uc_cart_checkout 中使用的方法创建了自己的函数来执行此操作:
function mycustommodule_uc_cart_total($oid = NULL){
$items = uc_cart_get_contents($oid);
$subtotal = 0;
if (is_array($items) && count($items) > 0) {
foreach ($items as $item) {
$data = module_invoke($item->module, 'uc_cart_display', $item);
if (!empty($data)) {
$subtotal += $data['#total'];
}
}
}
return $subtotal;
}//end function
请注意,这仅计算购物车项目的总数,不包括运输或其他附加订单项等内容。