it-roy-ru.com

В WooCommerce мне нужно изменить страницу thankyou.php

В шаблоне thankyou.php есть действие, показывающее раздел, отмеченный красным на изображении. Проблема в том, что заголовок/заголовок " Наши банковские данные " должен быть выше описания, а не ниже.

screen-dump

Код в thankyou.php , который создает этот раздел:

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

Вышеуказанное действие должно указывать на некоторый код в каком-то другом файле, который, я надеюсь, я могу изменить, используя хук в моем funcitons.php. Мне нужна помощь :-)

thankyou.php находится:

..wp-содержание/плагины/WooCommerce/шаблоны/фотографии/thankyou.php

Я скопировал его в папку с дочерними темами, и я должен редактировать его напрямую

2
MrCalvin

В итоге я вставил описание платежа.
(тот, который вы указываете в настройках woocommerce в бэкэнде Wordpress)

"Встроенный" встроенный текст платежа woocommerce является статическим и не относится к фактически выбранному способу оплаты. :-(

Я сделал это, изменив файл шаблона woocommerce:

1: Скопируйте этот файл шаблона:

..wp-содержание/плагины/WooCommerce/шаблоны/фотографии/thankyou.php

в

your-theme-folder / woocommerce/checkout/thankyou.php

2: заменить эту строку removeline

с этим кодом:

<?php
    if ( $available_gateways = WC()->payment_gateways->get_available_payment_gateways() ) {
        foreach ( $available_gateways as $gateway ) {
            if ( $gateway->title == $order->payment_method_title) { 
                echo '<div> <h2>Payment<h2/> </div>';
                echo $gateway->payment_fields();
            }
        }
    }
?>

(мой первый настоящий PHP код, так что я бы не удивился, если бы вы могли быть умнее ;-))

Результат (страница на датском): screendump

Недостатком этого подхода является то, что если однажды WooCommerce обновит этот шаблон, вам нужно помнить, чтобы обновить его самостоятельно!

3
MrCalvin

К сожалению, для удаления этого текста "Наши банковские реквизиты" нет доступного хука. Но вы можете скрыть область по умолчанию, которая добавляется и не предназначена, поместив следующее правило в файл style.css вашей темы:

.woocommerce-order-received .woocommerce h2:nth-of-type(2) {
    display: none;
}

Затем, чтобы получить "Наши банковские реквизиты" в нужном месте, просто перейдите в WooCommerce> Настройки> Оформить заказ> BACS и добавьте <h2>Our Bank Details</h2> в Инструкции текстовую область.

Дайте мне знать, как оно идет :)

2
Prasad Nevase