Agregue un texto en la página de pedido recibido de Woocommerce después de la dirección de facturación

2 minutos de lectura

avatar de usuario
usuario8875458

Me gustaría saber cómo agregar texto en la página de pedido recibido de Woocommerce después de la dirección de facturación en la parte inferior.

¿Hay algún gancho que pueda usar?
¿O de alguna otra manera se puede lograr esto?

  • Tienes que explicar un poco más. Además, intente agregar algún código o lo que intentó hacer.

    – Faustino Gagneten

    2 de noviembre de 2017 a las 15:26

Pruebe esta función enganchada personalizada en woocommerce_thankyou gancho de acción:

add_action( 'woocommerce_thankyou', 'custom_content_thankyou', 10, 1 );
function custom_content_thankyou( $order_id ) {

    echo '<p>'. __('My custom text').'</p>';
}

El código va en el archivo function.php de su tema secundario activo (o tema) o también en cualquier archivo de complemento.

Probado y funciona…

  • ¡Tu solución funcionó! ¡Gracias por su increíble apoyo! 🙂

    – usuario8875458

    5 noviembre 2017 a las 13:00

avatar de usuario
hendy irwan

Puede agregar ganchos de acción dentro de su tema (hijo) o un complemento. Expandiendo la respuesta de @LoicTheAztec:

add_action( 'woocommerce_thankyou', 'custom_content_thankyou', 10, 1 );

function custom_content_thankyou( $order_id ) {
    echo '<p>'. __('My custom text').'</p>';
}

Aquí están mas acciones que puede usar, que lamentablemente no se mencionan (¿todavía?) en el Documentación oficial de referencia de WooCommerce Action and Filter Hook:

  1. woocommerce_before_thankyou
  2. woocommerce_thankyou_{payment_method} (dinámica)
  3. woocommerce_thankyou

Hay momentos en los que necesita los detalles del pedido y el método de envío. Para obtener los detalles del pedido, puede utilizar $order = new WC_Order($order_id);. Por ejemplo:

function produkindo_before_thankyou($order_id) {
    $order = new WC_Order($order_id);
    // Iterating through order shipping items
    foreach( $order->get_items( 'shipping' ) as $item_id => $shipping_item_obj ){
        // $order_item_name             = $shipping_item_obj->get_name();
        // $order_item_type             = $shipping_item_obj->get_type();
        // "Prahu-Hub" or "Prahu - Hub"
        $shipping_method_title       = $shipping_item_obj->get_method_title();
        $shipping_method_id          = $shipping_item_obj->get_method_id(); // The method ID
        $shipping_method_instance_id = $shipping_item_obj->get_instance_id(); // The instance ID
        // $shipping_method_total       = $shipping_item_obj->get_total();
        // $shipping_method_total_tax   = $shipping_item_obj->get_total_tax();
        // $shipping_method_taxes       = $shipping_item_obj->get_taxes();
        break;
    }
    if (preg_match('/^Prahu/i', $shipping_method_title)) {
        ?>
        <div class="prahu-hub-thankyou">
            Silakan melanjutkan pemesanan pengiriman untuk barang yang Anda beli di <a target="_blank" href="https://prahu-hub.com/home/pencarian"><strong>Prahu–Hub</strong></a>.
        </div>
        <?php
    }
}

add_action('woocommerce_before_thankyou', 'produkindo_before_thankyou');

¿Ha sido útil esta solución?