Стандартная страница thank you в Woocommerce

Рейтинг: 0Ответов: 0Опубликовано: 11.08.2023

Ситуация следующая. Есть сайт с самопальной темой, на которой стоит woocommerce. После оформления заказа должна открываться страница Thank you (спасибо за заказ с указанными введенными данными). Но при переходе на эту страницу вылазит Критическая ошибка

Fatal error: Uncaught Error: Call to a member function get_id() on string in /home/f/fatcatxi/fatcatxi.beget.tech/public_html/wp-content/themes/fatcatvape/thankyou.php:28 Stack trace: #0 /home/f/fatcatxi/fatcatxi.beget.tech/public_html/wp-includes/template-loader.php(106): include() #1 /home/f/fatcatxi/fatcatxi.beget.tech/public_html/wp-blog-header.php(19): require_once('/home/f/fatcatx...') #2 /home/f/fatcatxi/fatcatxi.beget.tech/public_html/index.php(17): require('/home/f/fatcatx...') #3 {main} thrown in /home/f/fatcatxi/fatcatxi.beget.tech/public_html/wp-content/themes/fatcatvape/thankyou.php on line 28

Дефолтный код шаблона страницы Thank you не менял, вот он:

<div class="woocommerce-order">
<?php
if ( $order ) :
    do_action( 'woocommerce_before_thankyou', $order->get_id() );
    ?>

    <p class="woocommerce-notice woocommerce-notice--success woocommerce-thankyou-order-received"><?php echo apply_filters( 'woocommerce_thankyou_order_received_text', esc_html__( 'Thank you. Your order has been received.', 'woocommerce' ), $order ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></p>

    <ul class="woocommerce-order-overview woocommerce-thankyou-order-details order_details">

        <li class="woocommerce-order-overview__order order">
            <?php esc_html_e( 'Order number:', 'woocommerce' ); ?>
            <strong><?php echo $order->get_order_number(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></strong>
        </li>

        <li class="woocommerce-order-overview__date date">
            <?php esc_html_e( 'Date:', 'woocommerce' ); ?>
            <strong><?php echo wc_format_datetime( $order->get_date_created() ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></strong>
        </li>

        <li class="woocommerce-order-overview__total total">
            <?php esc_html_e( 'Total:', 'woocommerce' ); ?>
            <strong><?php echo $order->get_formatted_order_total(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></strong>
        </li>

        

    </ul>

    <?php do_action( 'woocommerce_thankyou', $order->get_id() ); ?>

<?php else : ?>

    <p class="woocommerce-notice woocommerce-notice--success woocommerce-thankyou-order-received"><?php echo apply_filters( 'woocommerce_thankyou_order_received_text', esc_html__( 'Thank you. Your order has been received.', 'woocommerce' ), null ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></p>

<?php endif; ?>

При этом если установить тему Astra то этот шаблон открывается и все отображается. Что мне надо сделать в своей теме, чтобы не было данной ошибки?

Ответы

Ответов пока нет.