Wie kombinieren Sie verschiedene WooCommerce -Gebühren zu einem Namen?Php

PHP-Programmierer chatten hier
Anonymous
 Wie kombinieren Sie verschiedene WooCommerce -Gebühren zu einem Namen?

Post by Anonymous »

Ich richte kalifornische Einlösungswertgebühren für meine Website ein. Der Code, den ich hier gefunden habe, funktioniert, aber ich möchte, dass die verschiedenen Gebühren unter demselben Namen kombiniert werden. Dies wäre nur "C.R.V." Zählen Sie jedoch immer noch die entsprechenden Gebühren auf der Grundlage der verschiedenen Produkte im Warenkorb. Beispiel: Ein 5 -Cent -CRV -Element und ein 10 -Cent -CRV -Element im Karren werden derzeit in zwei separaten Zeilen angezeigt. Ich hätte gerne ein Ergebnis von nur "C.R.V. - 0.15c" < /p>
Derzeit wird angezeigt: < /p>
Verwenden Sie Code aus der Antwort auf diese Seite < /p>
Code, den ich verwende: < /p>
function action_woocommerce_cart_calculate_fees( $cart ) {
if ( is_admin() && ! defined( 'DOING_AJAX' ) )
return;

// Settings (multiple settings arrays can be added/removed if desired)
$settings = array(
array(
'product_id' => array( 11891, 11893 ),
'amount' => 0.05,
'name' => __( '5 Cent C.R.V.', 'woocommerce' ),
'total_amount' => 0,
),
array(
'product_id' => array( 11892 ),
'amount' => 0.10,
'name' => __( '10 Cent C.R.V.', 'woocommerce' ),
'total_amount' => 0,
),
array(
'product_id' => array( 825 ),
'amount' => 0.20,
'name' => __( '20 Cent CRV', 'woocommerce' ),
'total_amount' => 0,
),
);

// Loop through cart contents
foreach ( $cart->get_cart_contents() as $cart_item ) {
// Get product id
$product_id = $cart_item['product_id'];

// Get quantity
$quantity = $cart_item['quantity'];

// Loop trough settings array (determine total amount)
foreach ( $settings as $key => $setting ) {
// Search for the product ID
if ( in_array( $product_id, $settings[$key]['product_id'] ) ) {
// Addition
$settings[$key]['total_amount'] += $setting['amount'] * $quantity;
}
}
}

// Loop trough settings array (output)
foreach ( $settings as $setting ) {
// Greater than 0
if ( $setting['total_amount'] > 0 ) {
// Add fee
$cart->add_fee( $setting['name'], $setting['total_amount'], false );
}
}
}
add_action( 'woocommerce_cart_calculate_fees', 'action_woocommerce_cart_calculate_fees', 10, 1 );
< /code>
Ich habe versucht, alle Gebühren in nur "C.R.V." umzubenennen Aber dann wird der Wagen nur eine Gebühr angezeigt und zählt. Ich entschuldige mich, wenn dies sehr einfach ist oder mich ins Gesicht starrt, aber ich bin extrem neu in jeder Art von Codierung. Jede Hilfe wird sehr geschätzt!

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post