Rufen Sie die Warenkorb-Artikelschlüssel-ID eines bestimmten entfernten Artikels ab: WooCommerce-Einkaufswagen
P粉384244473
P粉384244473 2024-04-04 16:35:18
0
1
423

In WooCommerce habe ich eine benutzerdefinierte cart.php Vorlage, in der ich überprüfen muss, ob ein gelöschtes Produkt (Artikel) eindeutig ist, und dann basierend auf diesen Informationen weiteren Code erstellen muss.

Gibt es eine Möglichkeit, diese EINE Schlüssel-ID eines gelöschten Elements zu finden, ohne Hooks zu verwenden, d. h. eine Benachrichtigung '“Item X”已删除的那个。撤消?'?

Ich kann nirgendwo eine Lösung finden.

P粉384244473
P粉384244473

Antworte allen(1)
P粉545956597

您可以通过两种方式获取已删除的购物车商品:

  • 从 WC_Cart 对象中使用:

    $removed_items = WC()->cart->get_removed_cart_contents();
  • 从 WC_Session 对象中使用:

    $removed_items = WC()->session->get('removed_cart_contents');

要定位特定的已删除产品并获取其密钥 ID(以及撤消 URL 或从中删除 URL),请使用:

$targeted_product_id = 25; // Set the product ID to target
$targeted_item_key   = ''; // Initializing

// Get removed cart items
$removed_items = WC()->cart->get_removed_cart_contents();

// Loop through removed cart items
foreach( $removed_items as $item_key => $item ) {
    $product_id   = $item['product_id'];
    $variation_id = $item['variation_id'];

    if( in_array($targeted_product_id, [$product_id, $variation_id]) ) {
        $targeted_item_key = $item_key; 
        break;
    }
}
// get the Undo URL
$undo_url = WC()->cart->get_undo_url( $targeted_item_key );

// Test output Undo URL
echo ''. __("Undo Url") . '';

// get the remove URL
$remove_url = WC()->cart->get_remove_url( $targeted_item_key );

// Test output remove URL
echo ''. __("Remove Url") . '';
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage