На моей странице оформления заказа в Woocommerce я хочу переместить ссылку на купон из верхней части страницы в поле просмотра заказа между промежуточной суммой и способами оплаты с моим собственным переводом.Я хочу, чтобы поле с купоном открывалось внизу страницы и автоматически прокручивалось там.Мне удалось переместить ссылку и открыть окно внизу страницы, найдя код ниже Google (источник: https://www.sellwithwp.com/move-the-woocommerce-coupon-field/):
). Проблема в том, что страница прокручивается слишком далеко вниз. Я хочуостановитесь на поле со скидкой. Поле открывается под формой оформления заказа при нажатии на ссылку ваучера. Это URL-адрес страницы: https://www.shopamerica.nl/afrekenen/ (в корзине нужно что-то более € 20, например, https://www.shopamerica.nl/product/hersheys-kisses-milk-chocolate-party-bag-113-kg/) Это должно быть в этой строке:
$( "html, body" ).animate({scrollTop:$(document).height()}, "slow" );
Я гуглил и искал на этом сайте, думал, что я нашел решения с блоком div. Но я не могу заставить его работать. Спасибо заВаша помощь.
Код для перемещения ссылки на форму и поле внизу
// move form link check out to bottom
remove_action( 'woocommerce_before_checkout_form', 'woocommerce_checkout_coupon_form', 10 );
add_action( 'woocommerce_after_checkout_form', 'woocommerce_checkout_coupon_form' );
Код для перемещения окна просмотра заказа на ссылку формы
// rename coupon message on checkout
add_filter( 'woocommerce_email_order_items_table', 'sww_add_wc_order_email_images', 10, 2 );
function woocommerce_rename_coupon_message_on_checkout() {
return 'Heb je een voucher?' . ' <a href="#" class="showcoupon">' . __( 'Click here to enter your code', 'woocommerce' ) . '</a>';
}
add_filter( 'woocommerce_checkout_coupon_message', 'woocommerce_rename_coupon_message_on_checkout' );
// rename the coupon field on the checkout page
function woocommerce_rename_coupon_field_on_checkout( $translated_text, $text, $text_domain ) {
// bail if not modifying frontend woocommerce text
if ( is_admin() || 'woocommerce' !== $text_domain ) {
return $translated_text;
}
if ( 'Coupon code' === $text ) {
$translated_text = 'voucher';
} elseif ( 'Apply Coupon' === $text ) {
$translated_text = 'Vouchercode toepassen';
}
return $translated_text;
}
add_filter( 'gettext', 'woocommerce_rename_coupon_field_on_checkout', 10, 3 );
// show form link in order review section
function sa_show_coupon_js() {
wc_enqueue_js( '
$( "a.showcoupon" ).parent().hide();
$( "body" ).bind( "updated_checkout", function() {
$( "#show-coupon-form" ).click( function() {
$( ".checkout_coupon" ).show();
$( "html, body" ).animate({scrollTop:$(document).height()}, "slow" );
return false;
} );
} );
');
}
add_action( 'woocommerce_before_checkout_form', 'sa_show_coupon_js' );
/**
* Show a coupon link above the order details.
**/
function sa_show_coupon() {
echo '<p class="voucher_sa"> Heb je een voucher? <a href="#" id="show-coupon-form">Klik hier om de code in te vullen</a>.</p>';
}
add_action( 'woocommerce_checkout_order_review', 'sa_show_coupon' );