Отображение полей доставки по умолчанию на странице оформления заказа

На странице оформления заказа WooCommerce я продаю только один продукт. На странице оформления заказа отображается этот продукт, и ckeckbox рядом с ним, чтобы показать детали доставки, при нажатии. Это по умолчанию form-checkout.php WooCommerce шаблон.

Я хотел бы иметь это ckeckbox всегда выбран, чтобы показать платежные данные по умолчанию.

Я попытался установить:

$checkout = 1;

Пока без удачи. Радиокнопка отображается следующим хуком:

<?php do_action( 'woocommerce_checkout_before_customer_details'); ?>

Любая помощь, дающая мне знать, как я могу достичь этого, будет очень полезна.

Благодарю.

1

Решение

Если вы посмотрите на код checkout/form-shipping.php Шаблон WooCommerce, внутри <h3> тег, где расположен код чекбокса, есть woocommerce_ship_to_different_address_checked крючок, который вы можете использовать для достижения этого. Вот выдержка из этого шаблона кода, который показывает это:

?>
<div class="woocommerce-shipping-fields">
<?php if ( true === WC()->cart->needs_shipping_address() ) : ?>

<h3 id="ship-to-different-address">
<label for="ship-to-different-address-checkbox" class="checkbox"><?php _e( 'Ship to a different address?', 'woocommerce' ); ?></label>
<input id="ship-to-different-address-checkbox" class="input-checkbox" <?php checked( apply_filters( 'woocommerce_ship_to_different_address_checked', 'shipping' === get_option( 'woocommerce_ship_to_destination' ) ? 1 : 0 ), 1 ); ?> type="checkbox" name="ship_to_different_address" value="1" />
</h3>

<div class="shipping_address">

Таким образом, вы можете использовать этот хук таким образом, чтобы этот флажок всегда был установлен и отображал детали счета:

add_filter( 'woocommerce_ship_to_different_address_checked', '__return_true');

Этот код находится в файле function.php вашей активной дочерней темы (или темы), а также в любом файле плагина.

Код протестирован и полностью функционален.

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]