Código abreviado de información adicional del producto WooCommerce

3 minutos de lectura

avatar de usuario
Rémi

Soy nuevo en WooCommerce y estoy buscando una solución para mostrar Atributos del producto en una página de publicación. He investigado y hecho algunas pruebas, pero nada parece funcionar.

Idealmente, me gustaría usar un Código corto tomando el ID del Producto y mostrando todos los atributos de su producto en mi página de publicación. algo como [product_page id="99" display_only_attributes ]

  • solo quiero que se muestren en mi página de publicación (blog) como normalmente están en la página del producto. Pero solo la sección de información adicional (los atributos). Sin html, solo con wordpress back-end. El objetivo es que el equipo de contenido de mi empresa pueda usar cualquier producto ingresado en woocommerce y mostrar sus atributos en medio de una página de publicación. Es para un producto simple que también mostraría variaciones.

    – Rémi

    8 de mayo de 2018 a las 7:25


  • Entonces, desea mostrar todos los atributos en la página de listado de productos, en cuanto al producto.

    – PPL

    8 de mayo de 2018 a las 7:27

  • Bueno, no en la página del producto, sino en una página de publicación. Actualmente estamos construyendo un sitio web de revisiones de automóviles. Cada automóvil se ingresará en woocommerce, con todos los atributos específicos asociados a cada automóvil. Las reseñas se escriben como publicaciones de blog normales. Cuando el equipo de contenido está escribiendo una reseña sobre un automóvil, me gustaría que pudieran usar un código abreviado que se refiera a la identificación del automóvil ingresada en WooCommerce, que enumeraría todos sus atributos en el artículo.

    – Rémi

    8 de mayo de 2018 a las 7:33

  • funcionando perfectamente! Muchas gracias 🙂

    – Rémi

    8 de mayo de 2018 a las 7:55

avatar de usuario
LoicTheAztec

Esta es la forma de obtener los atributos del producto en un código abreviado personalizado donde definirá la ID del producto como un argumento de código abreviado id.

El código de función:

if ( ! function_exists( 'display_product_additional_information' ) ) {

    function display_product_additional_information($atts) {

        // Shortcode attribute (or argument)
        $atts = shortcode_atts( array(
            'id'    => ''
        ), $atts, 'product_additional_information' );

        // If the "id" argument is not defined, we try to get the post Id
        if ( ! ( ! empty($atts['id']) && $atts['id'] > 0 ) ) {
           $atts['id'] = get_the_id();
        }

        // We check that the "id" argument is a product id
        if ( get_post_type($atts['id']) === 'product' ) {
            $product = wc_get_product($atts['id']);
        }
        // If not we exit
        else {
            return;
        }

        ob_start(); // Start buffering

        do_action( 'woocommerce_product_additional_information', $product );

        return ob_get_clean(); // Return the buffered outpout
    }

    add_shortcode('product_additional_information', 'display_product_additional_information');

}

El código va en el archivo function.php de su tema secundario activo (o tema activo). Probado y funciona.

USO DE CÓDIGO CORTO (Actualizado)

  1. con un identificador de producto definido:

    [product_additional_information id='37']
    

    O en php:

    echo do_shortcode("[product_additional_information id='37']");
    
  2. En una página de producto existente (cuando se elimina la pestaña de producto “información adicional”, por ejemplo):

    [product_additional_information]
    

    O en php:

    echo do_shortcode("[product_additional_information]");
    

Obtendrás algo como esto:

ingrese la descripción de la imagen aquí

¿Ha sido útil esta solución?

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Configurar y más información
Privacidad