es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Añadiendo ACF a ul.products en la página de tienda de Woocommerce.

Estoy utilizando WooCommerce y Advanced Custom Fields, donde se ha configurado un grupo de ACF con un tipo de publicación para los productos. Me gustaría agregar un par de campos de texto simples debajo del título del producto en el cuadro de productos, y que aparezcan en todos los productos.

He buscado y encontrado que el gancho para esto es woocommerce_after_shop_loop_item_title.

Imagen adjunta para descripción visual.

Enlace de imagen

De esta manera, estoy buscando agregar el valor de la dirección ($location), el valor de las habitaciones ($bed) y los baños ($bath).

Por favor, entiende que soy muy nuevo en PHP y todavía estoy aprendiendo. He intentado hacer un intento, pero no estoy seguro de cómo extraer los datos del campo de la publicación del producto.

Cualquier consejo en la dirección correcta para aprender sería realmente apreciado.

Gracias de antemano.

add_action('woocommerce_after_shop_loop_item_title', 'woo_products_property', 1);
function woo_products_property() {
    ?>
    <div class="property_loop_bottom_sec">
    <?php $location = get_field_object('address'); ?>
    <?php if (!empty($location)) { ?>
        <div class="feature">
            <div class="value"><i class="et-pb-icon map-marker"></i><?php echo $location['value'];?></div>
        </div>
    <?php } ?>
    <?php $bed = get_field_object('bedroom'); ?>
    <?php if (!empty($bed)) { ?>
        <div class="feature">
            <div class="value"><i class="fas fa-bed"></i><?php echo $bed['value'];?></div>
            <span>Bed</span>
        </div>
    <?php } ?>
    <?php $bath = get_field_object('bathroom'); ?>
    <?php if (!empty($bath)) { ?>
        <div class="feature">
            <div class="value"><i class="fas fa-bath"></i><?php echo $bath['value'];?></div>
            <span>Bath</span>
        </div>
    <?php } ?>
    </div>
<?php
}
Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Para agregar campos de texto simples al cuadro de productos debajo del título del producto utilizando WooCommerce y Advanced Custom Fields, deberás usar el gancho woocommerce_after_shop_loop_item_title.

    Primero, crea un grupo de ACF con un tipo de publicación para los productos y agrega los campos de Dirección, Dormitorios y Baños. Luego, puedes usar la función get_field_object para extraer los datos del campo de la publicación del producto y mostrarlos en el cuadro del producto.

    Para agregar los campos al cuadro del producto, usa el siguiente código:

    add_action( 'woocommerce_after_shop_loop_item_title', 'woo_products_property', 1 );
    function woo_products_property() { 
        ?>
        <div class="property_loop_bottom_sec">
            <?php $location = get_field_object('address'); ?>
            <?php if( ! empty( $location ) ) { ?>
                <div class="feature">
                    <div class="value"><i class="et-pb-icon map-marker"></i><?php echo $location['value'];?></div>
                </div>
            <?php } ?>
    
            <?php $bed = get_field_object('bedroom'); ?>
            <?php if( ! empty( $bed ) ) { ?>
                <div class="feature">
                    <div class="value"><i class="fas fa-bed"></i><?php echo $bed['value'];?></div>
                    <span>Dormitorios</span>
                </div>
            <?php } ?>
    
            <?php $bath = get_field_object('bathroom'); ?>
            <?php if( ! empty( $bath ) ) { ?>
                <div class="feature">
                    <div class="value"><i class="fas fa-bath"></i><?php echo $bath['value'];?></div>
                    <span>Baños</span>
                </div>
            <?php } ?>
        </div>
        <?php 
    } 
    

    Este código mostrará los valores de dirección, dormitorios y baños en el cuadro de productos debajo del título del producto. Asegúrate de reemplazar los nombres de los campos con los correctos de tu grupo de ACF.

Comments are closed.