carro de comercio drupal vacío con una url?

8

¿Es posible vaciar el carrito con drupal commerce visitando una url?

/ carro / vacío

Intentando crear un caso de prueba para el selenio

chrisjlee
fuente

Respuestas:

13

El código se vería así:

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');
}
Clive
fuente
1

Puede definir una URL con una función de devolución de llamada en la que simplemente borre mediante programación el contenido del carrito.

Meisca
fuente
1
¿Podría proporcionarnos cómo se ve en un módulo?
chrisjlee
0

Sé que este es un hilo antiguo, pero ahora hay un módulo para esto, vea Rutas de carrito vacío de Commerce . Este módulo permite a los administradores del sitio definir múltiples rutas, y cuando un usuario visita una página no declarada, su carrito de compras se vacía.

Nigel Waters
fuente
0

Como se sugiere, pruebe el módulo de rutas de carrito de comercio vacío .

Permite a los administradores del sitio definir múltiples rutas, y cuando un usuario visita una página no declarada, su carrito de compras se vacía.

Uso:

  1. Descargue y habilite el módulo.
  2. Vaya a admin / commerce / config / empty-cart-paths e ingrese cualquier ruta adicional. Checkout, Checkout / , cart y cart / se declaran por defecto

O sandbox de combert: módulo Commerce Clear Cart que simplemente agrega una página que cuando se visite vaciará el carrito de comercio de los usuarios actuales. También agrega un enlace a esa página a la vista del carrito de comercio.

kenorb
fuente
0

Espero que esto ayude a alguien que tenga el mismo problema ... instalé las reglas de ruta https://www.drupal.org/project/pathrules . A partir de ahí, cree una regla personalizada ... 1. Evento -> Drupal se está inicializando 2. compruebe el carrito de ruta / vacío 3. Acciones: elimine todos los productos de un pedido 4. goto Parámetro: URL: [sitio: url]

Christiane Peschen
fuente