На странице оформления заказа WooCommerce я продаю только один продукт. На странице оформления заказа отображается этот продукт, и ckeckbox рядом с ним, чтобы показать детали доставки, при нажатии. Это по умолчанию form-checkout.php
WooCommerce шаблон.
Я хотел бы иметь это ckeckbox всегда выбран, чтобы показать платежные данные по умолчанию.
Я попытался установить:
$checkout = 1;
Пока без удачи. Радиокнопка отображается следующим хуком:
<?php do_action( 'woocommerce_checkout_before_customer_details'); ?>
Любая помощь, дающая мне знать, как я могу достичь этого, будет очень полезна.
Благодарю.
Если вы посмотрите на код 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 вашей активной дочерней темы (или темы), а также в любом файле плагина.
Код протестирован и полностью функционален.
Других решений пока нет …