Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Hide WooCommerce thank you page order details

After placing an order in my WooCommerce store the customer gets redirected to a thank you (order-received) page.

I want to hide all of the details generated by WooCommerce on that page so that it only shows the custom content I have displayed at the top of the page.

I have tried using some custom CSS display:none; but there are not any appropriate selectors to select.

How do I hide the:

  1. Order details
  2. Customer details
  3. Billing address
  4. Order number
  5. date
  6. total
  7. payment method

enter image description here

like image 538
Gavin Reynoldson Avatar asked Dec 23 '22 21:12

Gavin Reynoldson


1 Answers

It can be done by many ways one of the way is by using WooCommerce template override.

Copy this file

/wp-content/plugins/woocommerce/templates/checkout/thankyou.php

and paste it into your active theme directory something like this

/wp-content/themes/activetheme/woocommerce/checkout/thankyou.php

And remove this

<ul class="woocommerce-thankyou-order-details order_details">
    <li class="order">
        <?php _e( 'Order Number:', 'woocommerce' ); ?>
        <strong><?php echo $order->get_order_number(); ?></strong>
    </li>
    <li class="date">
        <?php _e( 'Date:', 'woocommerce' ); ?>
        <strong><?php echo date_i18n( get_option( 'date_format' ), strtotime( $order->order_date ) ); ?></strong>
    </li>
    <li class="total">
        <?php _e( 'Total:', 'woocommerce' ); ?>
        <strong><?php echo $order->get_formatted_order_total(); ?></strong>
    </li>
    <?php if ( $order->payment_method_title ) : ?>
    <li class="method">
        <?php _e( 'Payment Method:', 'woocommerce' ); ?>
        <strong><?php echo $order->payment_method_title; ?></strong>
    </li>
    <?php endif; ?>
</ul>
<div class="clear"></div>

and also remove this

<?php do_action( 'woocommerce_thankyou_' . $order->payment_method, $order->id ); ?>
<?php do_action( 'woocommerce_thankyou', $order->id ); ?>

So your final thankyou.php will look like this.

if (!defined('ABSPATH'))
{
    exit;
}
if ($order) :
    ?>
    <?php if ($order->has_status('failed')) : ?>
        <p class="woocommerce-thankyou-order-failed"><?php _e('Unfortunately your order cannot be processed as the originating bank/merchant has declined your transaction. Please attempt your purchase again.', 'woocommerce'); ?></p>
        <p class="woocommerce-thankyou-order-failed-actions">
            <a href="<?php echo esc_url($order->get_checkout_payment_url()); ?>" class="button pay"><?php _e('Pay', 'woocommerce') ?></a>
            <?php if (is_user_logged_in()) : ?>
                <a href="<?php echo esc_url(wc_get_page_permalink('myaccount')); ?>" class="button pay"><?php _e('My Account', 'woocommerce'); ?></a>
            <?php endif; ?>
        </p>
    <?php else : ?>
        <p class="woocommerce-thankyou-order-received"><?php echo apply_filters('woocommerce_thankyou_order_received_text', __('Thank you. Your order has been received.', 'woocommerce'), $order); ?></p>
    <?php endif; ?>
<?php else : ?>
    <p class="woocommerce-thankyou-order-received"><?php echo apply_filters('woocommerce_thankyou_order_received_text', __('Thank you. Your order has been received.', 'woocommerce'), null); ?></p>
<?php endif; ?>

Hope this helps!

like image 183
Raunak Gupta Avatar answered Dec 26 '22 15:12

Raunak Gupta