Listar atributos y visibles por defecto en WooCommerce

Para los usuarios más avanzados WooCommerce, el metaplugin estándar de facto para la creación de tiendas virtuales sobre WordPress, el titular de la entrada ya debería sonarle de algo, de hecho es muy posible que esta modificación del comportamiento habitual les interese y se hayan enfrentado a esta limitación anteriormente.

¿Dónde está la limitación?

¿Echamos de menos disponer de todos los atributos de un producto de un solo vistazo? Cuando se inserta un nuevo producto o se modifica uno existente resulta muy engorroso a) añadir uno a uno todos los atributos del producto y b) poder acceder a ellos directamente ¿no sería más conveniente disponer de todos ellos de forma directa? Dicho de otra manera: listar atributos.

¿Realmente resulta necesario marcar atributo a atributo para indicar al sistema que deseamos mostrarlo desde el frontend? Del mismo modo, cuando editamos un producto, ya sea nuevo o existente, siempre hemos de indicar explícitamente que deseamos mostrarlo en la tienda, ¿por qué no íbamos a querer hacerlo?

Vamos a ello, listar atributos made easy

Bien, veamos como proporcionar de esa funcionalidad a nuestra instalación WordPress:

Podemos hacerlo a través del fichero functions.php del tema, a través de la creación de un plugin o usando inserciones de código que nos pueda proporcionar el tema o de un plugin para ese propósito. Como vía más directa, lo haremos a través del primer caso, editando mediante FTP o directamente a través del editor de WordPress dicho fichero y añadiendo las siguientes líneas:

function scripts_mostrar_marcar_atributos(){ ?>
<script type="text/javascript">
    jQuery(document).ready(function($) {
        $('.product_attributes > div').removeClass('closed').show();
        $('#product_attributes a.expand_all').click();
        if (!$("#product_attributes > div > div.woocommerce_attribute.wc-metabox.taxonomy.pa_tecnica-soporte > table > tbody > tr:nth-child(2) > td > label > input").is(':checked'))
                $("#product_attributes > div > div.woocommerce_attribute.wc-metabox.taxonomy.pa_tecnica-soporte > table > tbody > tr:nth-child(2) > td > label > input").click();
        if (!$("#product_attributes > div > div.woocommerce_attribute.wc-metabox.taxonomy.pa_agno > table > tbody > tr:nth-child(2) > td > label > input").is(':checked'))
                $("#product_attributes > div > div.woocommerce_attribute.wc-metabox.taxonomy.pa_agno > table > tbody > tr:nth-child(2) > td > label > input").click();
        if (!$("#product_attributes > div > div.woocommerce_attribute.wc-metabox.taxonomy.pa_autor> table > tbody > tr:nth-child(2) > td > label > input").is(':checked'))
                $("#product_attributes > div > div.woocommerce_attribute.wc-metabox.taxonomy.pa_autor> table > tbody > tr:nth-child(2) > td > label > input").click();
    });
</script>
<?php
}
add_action('admin_print_footer_scripts', 'scripts_mostrar_marcar_atributos');

¿Y como aplicarlo a mis atributos? Sólo tendrás que reemplazar pa_* por el nombre del atributo que hayas creado para tu producto.

Entonces ahora sí, podemos listar atributos y hacerlo visibles por defecto:

listar_atributos_woocommerce_codection1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (1 votos, promedio: 2,00 de 5)

Cargando…

Almacenamos las IPs desde la que se envían las valoraciones para evitar fraudes

6

6 thoughts on “Listar atributos y visibles por defecto en WooCommerce

  • Héctor Delgado Durán

    Hola. Tiene muy buena pinta. Lo he probado con Woocomerce 2.6.14 y no funciona. esto trasteando a ver si veo que ha cambiado para solucionarlo. ¿Sabes si ha día de hoy esto debería funcionar tal como está? Gracias y un saludo.

      Responder

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Carrito