Как добавить вторую кнопку 'Оформить заказ' в WooCommerce

21 мар. 2014 г., 14:20:58
Просмотры: 22.9K
Голосов: 1

Мой клиент хочет иметь две кнопки 'Оформить заказ' на странице оформления заказа (http://www.jobgrandprix.fr/checkout/?set-cart-qty_2652=1).

По умолчанию кнопка 'Commander' (его сайт на французском) находится внизу страницы. Я пытаюсь добавить вторую кнопку в правой колонке в верхней части страницы.

Я думаю, что нужно модифицировать файл form-checkout.php. Предполагаю, что нужно добавить её там, где обычно находится колонка доставки (которая здесь не используется, так как это виртуальный товар).

Буду очень благодарен, если кто-нибудь сможет подсказать решение.

Спасибо.

1
Комментарии

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

Kumar Kumar
21 мар. 2014 г. 14:49:05
Все ответы на вопрос 1
2

Кнопка "Оформить заказ" не может находиться вне элемента <form></form>. Что вы можете сделать - это продублировать кнопку внутри элемента, но в верхней его части. Вот так:

Изображение для примера

Для этого:

В вашей дочерней теме создайте папку woocommerce, а внутри неё папку checkout.

Теперь перейдите в wp-content\plugins\woocommerce\templates\checkout и скопируйте файл form-checkout.php, затем вставьте его в папку MY_CHILD_THEME\woocommerce\checkout и отредактируйте.

ЗАЧЕМ ЭТО НУЖНО? Чтобы не редактировать основные файлы WooCommerce, иначе изменения потеряются при обновлении плагина. Указанная структура переопределяет основной файл шаблона.

ТЕПЕРЬ РЕДАКТИРУЕМ form-checkout.php

После строки:

<form name="checkout" method="post" class="checkout" action="<?php echo esc_url( $get_checkout_url ); ?>">

Добавьте код кнопки, и это должно выглядеть так:

<form name="checkout" method="post" class="checkout"
action="<?php echo esc_url( $get_checkout_url ); ?>">

<div class="form-row place-order">

  <noscript>Так как ваш браузер не поддерживает JavaScript или он отключен,
    убедитесь, что вы нажали кнопку &amp;lt;em&amp;gt;Обновить итоги&amp;lt;/em&amp;gt;
    перед оформлением заказа. Если вы этого не сделаете, с вас может быть списана сумма,
    превышающая указанную выше.&amp;lt;br/&amp;gt;&amp;lt;input type="submit"
    class="button alt" name="woocommerce_checkout_update_totals"
    value="Обновить итоги" /&amp;gt;</noscript>

    <input
    type="hidden" id="_wpnonce" name="_wpnonce"
    value="c82a4af261"><input type="hidden" name="_wp_http_referer"
    value="/woocommerce2/wp-admin/admin-ajax.php" />

    <input
    type="submit" class="button alt" name="woocommerce_checkout_place_order"
    id="place_order" value="Оформить заказ" data-value="Оформить заказ" />

  </div>

  <?php if ( sizeof( $checkout->checkout_fields ) > 0 ) : ?>

Сохраните изменения, и готово. Вы можете добавить немного CSS, чтобы выровнять кнопку по правой стороне элемента формы. Но помните, что она не может выходить за пределы элемента <form></form>.

21 мар. 2014 г. 15:00:13
Комментарии

Судип... ты ЛЕГЕНДА!!!!! :)

Mai Ling Mai Ling
21 мар. 2014 г. 18:27:49

Всегда пожалуйста :) Вы можете редактировать код согласно требованиям и применять нужные стили CSS, чтобы изменить внешний вид.

Sudeep K Rana Sudeep K Rana
6 авг. 2016 г. 12:58:37