• Долго не могла понять почему в Личном кабинете на вкладке “Мои заказы” не пропадает кнопка “Оплатить” после того, как заказ уже и оплачен, и переведён в статус “Выполнен”. Вместо этого кнопка не только остаётся, но и активна. Если её нажать, покупатель попадёт на страницу платежа и, выбрав метод оплаты, может повторно перейти к оплате заказа. Если проделать всё это, но прервать процесс на этапе когда надо указать данные карты для оплаты, то заказ перейдёт в статус “Ожидание оплаты”. И, напомню, всё это происходит с заказом, который ранее уже был и оплачен, и переведён в статус “Выполнено”. А дальше начинается паника и звонки “Аа! Мой оплаченный заказ отменён!”

    Путём перебора и поочерёдного отключения всех плагинов, выяснила что дело в плагине “Яндекс.Касса 2.0 для Woocommerce”, скриншоты прилагаю.

    Скриншот 1 Если плагин “Яндекс.Касса 2.0 для Woocommerce” активирован: https://www.dropbox.com/s/hnz6ewul07s4r0a/01.png
    Скриншот 2 Если плагин “Яндекс.Касса 2.0 для Woocommerce” деактивирован: https://www.dropbox.com/s/83qh83r4zushq60/02.png
    Скриншот 3 Что увидит покупатель, если нажмёт кнопку “Оплатить”: https://www.dropbox.com/s/e0g55p54yerb2dq/03.png

    Как сделать, чтобы кнопка “Оплатить” не показывалась, если заказ уже оплачен, или, хотя бы, чтобы она не была активной?

    • This topic was modified 4 years, 2 months ago by jungfernheide.
Viewing 10 replies - 1 through 10 (of 10 total)
  • Добрый день!

    Вы можете управлять списком статусов заказа, для которых разрешен переход к оплате.
    Список статусов задается здесь:
    https://plugins.trac.wordpress.org/browser/yandex-money-checkout/tags/1.3.2/includes/YandexMoneyCheckoutPayment.php#L339

    Чтобы кнопка для перехода к оплате не показывалась для заказов в статусах “Выполнен” и “Обработка”, изменить функцию таким образом:
    337 public function validStatuses()
    338 {
    339 return array(‘on-hold’, ‘pending’);
    340 }

    Thread Starter jungfernheide

    (@jungfernheide)

    Добрый день! Большое вам спасибо, вы очень помогли!

    Thread Starter jungfernheide

    (@jungfernheide)

    @ostulov
    ПС: внесла изменения, теперь всё хорошо. Ещё раз огромное спасибо!

    Thread Starter jungfernheide

    (@jungfernheide)

    @ostulov Здравствуйте! Вы уж извините, это опять я.
    В продолжение темы. Выяснилось, что если в файл YandexMoneyCheckoutPayment.php внести вышеуказанные изменения, то проблема кнопки “Оплатить” решается, но возникает другая проблема, совершенно неожиданная. А именно: после оплаты заказа и нажатия на кнопку “Вернуться в магазин” происходит возврат на страницу вот с такой ошибкой: Состояние заказа – “Обработка” и он не может быть оплачен. Обратитесь к нам за помощью. Скрин: https://www.dropbox.com/s/92o6ts6huh3eerf/%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA-%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0-2020-02-25-%D0%B2-18.19.27.png

    Это происходит и в случае если в настройках плагина “Яндекс.Касса 2.0 для Woocommerce” страницей возврата указана страница “заказ принят” от WooCommerce, и если страницей возврата указана какая-то своя страница. Я пробовала и так, и так.

    Но если вернуть файл YandexMoneyCheckoutPayment.php к первоначальному виду, то по этому же uRL, по которому только что выдавало ошибку, отображается нормальная страница (своя или стандартная “заказ принят” от woocommerce — какая указана в настройках плагина “Яндекс.Касса 2.0 для Woocommerce”).

    Можно ли как-то побороть это? Спасибо.

    Добрый день!

    Изменение файлов модуля может привести к непредсказуемым последствиям.

    В таком случае для решения проблемы показа кнопки “Оплатить” в личном кабинете плательщика остается вариант скрытия кнопки через правку шаблона страницы.

    Thread Starter jungfernheide

    (@jungfernheide)

    @ostulov Здравствуйте 🙂 Я не уверена, что правильно вас поняла.

    В моём тестовом аккаунте сейчас есть 4 созданных мною заказа, у всех них разный статус (На удержании, Выполнен, Обработка, Отменён).

    Если плагин “ЯК” активен, то для всех заказов кроме отменённого доступны две кнопки: Оплатить и Просмотр (для отменённого доступен только просмотр).

    Если плагин “ЯК” деактивириван, то для всех четырёх заказов доступна лишь кнопка “Просмотр”.

    Иными словами: плагин “ЯК” привносит изменения в работу шаблона “Заказы” от Woocommerce. Но править нужно всё равно шаблон. Я правильно поняла ваш ответ?

    Добрый день!

    Да, пока как временный вариант попробуйте через правку шаблона.

    Thread Starter jungfernheide

    (@jungfernheide)

    Яснопонятно, спасибо за ответ.

    ostulov

    (@ostulov)

    Добрый день!

    Выложили исправление в новой версии плагина 1.3.5

    Thread Starter jungfernheide

    (@jungfernheide)

    @ostulov, здравствуйте!
    Спасибо за информацию, в ближайшее время обновимся.

Viewing 10 replies - 1 through 10 (of 10 total)
  • The topic ‘Кнопка Оплатить в ЛК’ is closed to new replies.