1. Inicio
  2. Base de Conocimientos
  3. Advanced Coupons
  4. Condiciones del Carrito
  5. Cómo aplicar un cupón basado en metadatos del artículo del carrito

Cómo aplicar un cupón basado en metadatos del artículo del carrito

Algunas tiendas adjuntan datos adicionales a los artículos del carrito, como un campo personalizado de un complemento de producto. Puedes restringir un cupón para que solo se aplique cuando un artículo del carrito contenga una clave y un valor de metadatos particular. Este artículo te muestra cómo configurar la condición, cómo encontrar los metadatos que necesitas y cómo dirigirte a metadatos anidados.

Antes de empezar

  • La condición de carrito Metadatos personalizados de artículos del carrito requiere Advanced Coupons Premium.
  • Necesitas conocer la clave de metadatos y el valor de metadatos almacenados en el artículo del carrito. Los pasos a continuación te muestran cómo encontrarlos.

Configurar la condición del carrito

  1. Abre el cupón y busca la sección Cart Conditions.
  2. Añade la condición Metadatos personalizados de artículos del carrito.
  3. Introduce la Clave de metadatos.
  4. Introduce el Valor de metadatos.
  5. Actualiza el cupón.

Advanced Coupons comprueba el carrito con la clave y el valor. Si coinciden, el cupón se puede usar. Si no coinciden, el cliente ve un mensaje de error.

En este ejemplo, la condición se dirige a la clave de metadatos data_hash con el valor mostrado. El valor se almacena en un producto de prueba, por lo que la condición se cumple siempre que ese producto esté en el carrito.

Encontrar la clave y el valor de metadatos

Si no sabes qué metadatos tiene un artículo del carrito, registra el contenido del carrito. Añade el fragmento a continuación al archivo functions.php de tu tema hijo, o al plugin WPCode.

// Log the cart contents so you can read the item meta.
function action_woocommerce_after_cart() {
    error_log( print_r( WC()->cart->get_cart_contents(), true ) );
}
add_action( 'woocommerce_after_cart', 'action_woocommerce_after_cart' );

Luego, carga la página del carrito y lee el registro. El registro se escribe en wp-content/debug.log, pero solo cuando WP_DEBUG_LOG está habilitado en wp-config.php. Si esa constante no está habilitada, no se crea ningún archivo. Puedes abrir el archivo por FTP o a través del administrador de archivos de tu hosting.

Dirigirse a metadatos anidados

Para acceder a metadatos anidados dentro de otro valor, une los niveles con el carácter de barra vertical (|). El siguiente ejemplo tiene una variación con un valor anidado attribute_pa_color.

Para dirigirte a él, establece la Clave de metadatos a variation|attribute_pa_color. La condición del carrito se ve así en el cupón.

Solución de problemas

El cupón nunca se aplica. Comprueba la clave y el valor de metadatos con la salida del registro, incluida la capitalización y cualquier prefijo como attribute_.

No aparece ningún archivo de registro. Habilita WP_DEBUG_LOG en wp-config.php, luego recarga la página del carrito. Sin él, error_log() no escribe nada en wp-content.

Los metadatos anidados no coinciden. Comprueba que has unido los niveles con el carácter de barra vertical y que cada nombre de nivel coincide exactamente con el registro.

¿Necesitas ayuda?

Si tienes alguna pregunta o encuentras algún problema, estamos aquí para ayudarte.

¿Te ha sido útil este artículo?

Artículos Relacionados

Completa tu compra