PHP переупорядочение - PullRequest
       4

PHP переупорядочение

0 голосов
/ 19 октября 2019

Я настраиваю свой заказ в WooCommerce.

В настоящее время я хочу изменить порядок полей доставки, которые будут показаны сразу после оплаты, а не в сводке.

enter image description here

как вы можете видеть на нижнем рисунке, я попытался переместить его с помощью jQuery, jQuery("#order_review > table > tfoot > tr.woocommerce-shipping-totals.shipping").appendTo("#payment > ul");

, который, к сожалению, работает только когда я вставляю его в консоль разработчика, он не работает, когда я применяюСкрипт для чистых окон контента JS, в редакторе страниц WP.

Это тег tr. enter image description here

Я пытался переместить его в functions.php, с PHP, но мне удалось испортить весь сайт, и мне пришлось заново его строить. Так что я решил попросить о помощи.

Спасибо.

1 Ответ

1 голос
/ 19 октября 2019

Учитывая ваш подход к jquery, я думаю, что, возможно, проблема в том, что страница загружается не полностью во время выполнения JS. Ваш код должен выглядеть примерно так:

$( document ).ready(function() {
    jQuery("#order_review > table > tfoot > tr.woocommerce-shipping-totals.shipping").appendTo("#payment > ul");
});

Если вы хотите сделать это на PHP, я думаю, что эта ссылка может помочь. Как я обнаружил, вы хотите переместить одно поле в другую группу полей, что можно сделать так:

add_filter( 'woocommerce_checkout_fields', 'misha_billing_email_another_group' );

function misha_billing_email_another_group( $checkout_fields ){

    // 1. We assign a field array to another group here
    $checkout_fields['order']['billing_email'] = $checkout_fields['billing']['billing_email'];

    // 2. Remove a field from a previous location
    unset( $checkout_fields['billing']['billing_email'] );

    return $checkout_fields;

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...