logo

Extra Block Types (EBT) - Nueva experiencia con Layout Builder❗

Extra Block Types (EBT): tipos de bloques con estilo y personalizables: Presentaciones de diapositivas, Pestañas, Tarjetas, Acordeones y muchos más. Configuraciones integradas para fondo, DOM Box y plugins de JavaScript. Experimenta hoy el futuro de la construcción de diseños.

Módulos de demostración EBT Descargar módulos EBT

❗Extra Paragraph Types (EPT) - Nueva experiencia con Paragraphs

Extra Paragraph Types (EPT): conjunto de módulos basado en párrafos de forma análoga.

Módulos de demostración EPT Descargar módulos EPT

Scroll

Drupal Commerce: salida programática del botón "Agregar al carrito"

22/02/2025, by Anónimo (no verificado)

La pregunta es, necesito mostrar programáticamente el botón "Agregar al carrito" en la plantilla de Views. Estoy siguiendo el ejemplo http://drupal.org/node/1232470#comment-4801356 y la documentación http://api.drupalcommerce.org/api/Drupal%20Commerce/sites!all!modules!commerce!modules!cart!commerce_cart.module/function/commerce_cart_add_to_cart_form/DC

así:

 

<?php
    // construir los elementos de línea para el carrito de compras
    $line_item = commerce_line_item_new($view['product']->type, $order_id = 0);
    $line_item->data['context']['product_ids'] = array($view['product']->product_id);
    $line_item->quantity = 1;
   
    // necesitamos crear configuración para la cantidad
    $qty = 1;
   
    $form_id = commerce_cart_add_to_cart_form_id(array($view['product']->product_id), $qty);
    $addtocart_form = drupal_get_form($form_id, $line_item);
   
    // alteramos el formulario de envío para usar nuestra función de tema especial
    // necesitamos mover esto a la configuración
    $addtocart_form['submit']['#theme'][] = 'vtcommerce_button_small';
   
    $variables['cart'] = render($addtocart_form);
   
?>

Así que el botón se muestra correctamente, pero el widget para agregar la cantidad de productos no aparece, aunque $line_item->quantity = 1; y $qty = 1; .

La pregunta es: ¿por qué?