Respuestas de foro creadas

Viendo 3 respuestas - de la 1 a la 3 (de un total de 3)
  • Foro: WooCommerce
    En respuesta a: categoría sin compra

    Hola de nuevo Evasonder,

    No tengas miedo a investigar y probar sobre los Temas Hijo (o Child Themes), hay mucha información al respecto y una vez le coges el truquillo, verás que es muy útil. Te dejo un enlace oficial pero buscando por Google también encontrarás mucha información: https://codex.wordpress.org/es:Temas_hijos

    Si vas a poner los productos descatalogados sin precio, asegúrate bien de que no se puedan comprar a 0€, que el botón añadir al carrito desaparezca por completo. El enlace al formulario siempre te irá bien en estos casos.

    ¡Un saludo!

    Hola Somlaweb,

    Por aquí te dejamos 2 plugins que quizás puedan ayudarte a clonar el WordPress completo del dominio principal a los otros subdominios:

    https://wordpress.org/plugins/duplicator/
    https://wordpress.org/plugins/wp-staging/

    Y un vídeo que te explica paso a paso cómo hacer la clonación plugins:

    ¡Un saludo!

    Foro: WooCommerce
    En respuesta a: categoría sin compra

    Hola Evasonder,

    Encantado de saludarte.

    La forma más fácil de gestionarlo es con el plugin «WooCommerce Stock Manager», disponible de forma gratuita en el repositorio de WordPress. Deberás seguir marcando los productos con stock agotado pero podrás editar el mensaje de «Producto no disponible» y poner otro mensaje que estimes más oportuno.

    La opción más complicada, sería crear un Tema Hijo de tu tema actual e ir al archivo variation-add-to-cart-button.php de la ruta wp-content/plugins/woocommerce/templates/single-product/add-to-cart/. Ahí tendrá que crear un condicional para que si el producto pertenece a una categoría concreta (en tu caso, categoría descatalogados), no se muestre el botón de añadir al carrito. Y si pertenece a esa categoría, podrías mostrar un enlace tipo «Ir al formulario de contacto» para que no pierdas ese posible cliente y no te afecte demasiado al posicionamiento de tu página, pues Google valora negativamente las páginas de producto sin stock.

    Este sería el código original:

    
    defined( 'ABSPATH' ) || exit;
    
    global $product;
    ?>
    <div class="woocommerce-variation-add-to-cart variations_button">
        <?php do_action( 'woocommerce_before_add_to_cart_button' ); ?>
    
        <?php
        do_action( 'woocommerce_before_add_to_cart_quantity' );
    
        woocommerce_quantity_input( array(
            'min_value'   => apply_filters( 'woocommerce_quantity_input_min', $product->get_min_purchase_quantity(), $product ),
            'max_value'   => apply_filters( 'woocommerce_quantity_input_max', $product->get_max_purchase_quantity(), $product ),
            'input_value' => isset( $_POST['quantity'] ) ? wc_stock_amount( wp_unslash( $_POST['quantity'] ) ) : $product->get_min_purchase_quantity(), // WPCS: CSRF ok, input var ok.
        ) );
    
        do_action( 'woocommerce_after_add_to_cart_quantity' );
        ?>
    
        <button type="submit" class="single_add_to_cart_button button alt"><?php echo esc_html( $product->single_add_to_cart_text() ); ?></button>
    
        <?php do_action( 'woocommerce_after_add_to_cart_button' ); ?>
    
        <input type="hidden" name="add-to-cart" value="<?php echo absint( $product->get_id() ); ?>" />
        <input type="hidden" name="product_id" value="<?php echo absint( $product->get_id() ); ?>" />
        <input type="hidden" name="variation_id" class="variation_id" value="0" />
    </div>
    
    

    Y el código modificado quedaría así:

    
    global $product;
    ?>
    
    <?php 
    
        if (is_category( 'descatalogados' )) : ?>
    
            <a href="/contacto">Ir al formulario de contacto</a>
    
    <?php else: ?>
        
        
        <div class="woocommerce-variation-add-to-cart variations_button">
            <?php do_action( 'woocommerce_before_add_to_cart_button' ); ?>
        
            <?php
                do_action( 'woocommerce_before_add_to_cart_quantity' );
            
                woocommerce_quantity_input( array(
                    'min_value'   => apply_filters( 'woocommerce_quantity_input_min', $product->get_min_purchase_quantity(), $product ),
                    'max_value'   => apply_filters( 'woocommerce_quantity_input_max', $product->get_max_purchase_quantity(), $product ),
                    'input_value' => isset( $_POST['quantity'] ) ? wc_stock_amount( wp_unslash( $_POST['quantity'] ) ) : $product->get_min_purchase_quantity(), // WPCS: CSRF ok, input var ok.
                ) );
            
                do_action( 'woocommerce_after_add_to_cart_quantity' );
            ?>
        
            <button type="submit" class="single_add_to_cart_button button alt"><?php echo esc_html( $product->single_add_to_cart_text() ); ?></button>
        
            <?php do_action( 'woocommerce_after_add_to_cart_button' ); ?>
        
            <input type="hidden" name="add-to-cart" value="<?php echo absint( $product->get_id() ); ?>" />
            <input type="hidden" name="product_id" value="<?php echo absint( $product->get_id() ); ?>" />
            <input type="hidden" name="variation_id" class="variation_id" value="0" />
        </div>
        
    <?php endif;?>  
    

    Esperamos haberte servido de ayuda. ¡Un saludo!

Viendo 3 respuestas - de la 1 a la 3 (de un total de 3)