我正在尝试获取分配给BACS支付网关ID的WooCommerce中特定product_id值的总和。我有一个产品ID的数组,我使用array_sum来获取产品值的总和,但这不能正常工作。如果有人能引导我朝着更好的方向前进,我们将不胜感激。
add_action('woocommerce_before_cart_total', 'invoice_price');
<?php
$available_gateways = $woocommerce->payment_gateways->get_available_payment_gateways();
$product = new WC_Product( get_the_ID() );
$invoiceItems = array(522, 550, 523);
$formatted_total = woocommerce_price( $this->order_total );
function invoice_price( $available_gateways ) {
if ( $available_gateways == $gateways['bacs'] ) {
foreach($product == in_array($values['product_id'])) {
echo array_sum($invoiceItems);
}
$invoiceTotal = $formatted_total - $invoiceItems;
}
echo $invoiceTotal();
}
?>
答案 0 :(得分:0)
请考虑以下事项:
拥有100,200和300的数组最多可达600个。
$formatted_total = 5000;
我通过$formatted_total
数组减去$invoiceItems
,减去600减去等于4400。
<?php
$invoiceItems = array(100, 200, 300);
$formatted_total = 5000;
$invoiceTotal = $formatted_total - array_sum($invoiceItems);
echo $invoiceTotal; // will echo 4400
?>
echo $invoiceTotal();
将呈现无效,因为您正在尝试回显无效函数。
如果我使用以下内容:
$invoiceTotal = $formatted_total - $invoiceItems;
会产生以下错误:
致命错误:不支持的操作数类型