Czy można opróżnić wózek za pomocą drupala, odwiedzając adres URL?
/ koszyk / pusty
Próba stworzenia przypadku testowego dla selenu
Kod wyglądałby mniej więcej tak:
function MYMODULE_menu() {
$items['cart/empty'] = array(
'title' => 'Empty Cart',
'access arguments' => array('access content'), // or whatever permission you want
'page callback' => 'MYMODULE_empty_cart',
'type' => MENU_CALLBACK
);
return $items;
}
function MYMODULE_empty_cart() {
global $user;
// Load the order and empty the cart
$order = commerce_cart_order_load($user->uid);
commerce_cart_order_empty($order);
// As this page won't display anything you need to redirect somewhere
drupal_goto('some/page');
}
Możesz zdefiniować adres URL za pomocą funkcji zwrotnej, w której programowo wyczyścisz zawartość koszyka.
Wiem, że to stary wątek, ale teraz jest do tego moduł, patrz Ścieżki pustych koszyków Commerce . Ten moduł umożliwia administratorom witryn definiowanie wielu ścieżek, a gdy użytkownik odwiedza niezadeklarowaną stronę, koszyk jest opróżniany.
źródło
Zgodnie z sugestią wypróbuj moduł Commerce Empty Cart Paths .
Lub piaskownica Comberta: moduł Commerce Clear Cart , który po prostu dodaje stronę, która po odwiedzeniu opróżni obecnego użytkownika koszyk Commerce. Dodaje również link do tej strony do widoku koszyka Commerce.
źródło
Mam nadzieję, że to pomoże komuś, kto ma ten sam problem ... Zainstalowałem Path Rules https://www.drupal.org/project/pathrules . Stamtąd utwórz niestandardową regułę ... 1. Zdarzenie -> Drupal inicjuje 2. sprawdź ścieżkę koszyk / pusty 3. Działania: Usuń wszystkie produkty z zamówienia 4. goto Parametr: URL: [site: url]
źródło