Как исправить ошибку Woocommerce Payfast с переменными? - PullRequest
0 голосов
/ 11 декабря 2018
The supplied variables are not according to specification:

cancel_url : cancel_url must be a valid URL 
notify_url : notify_url must be a valid URL 
return_url : return_url must be a valid URL

Приведенная выше ошибка появляется, когда в интернет-магазине нажимается «разместить заказ», и он перенаправляется на payfast.Я не уверен, где установить эти переменные.

И да, песочница Payfast ОТКЛЮЧЕНА.

Сайт ранее работал и были совершены транзакции.После обновления WooCommerce и WordPress эти ошибки доставляются.Кто-нибудь может мне помочь?Связаться с WooCommerce не удалось.Я разработчик внешнего вида, поэтому я использую WordPress.Я не умею кодировать PHP, так что если у кого-нибудь есть несколько полезных советов по php, чтобы исправить эту проблему, это было бы здорово!

1 Ответ

0 голосов
/ 14 декабря 2018

PayFast выдает эту ошибку на странице оплаты, если предоставленные URL-адреса недействительны, или для локальных URL-адресов.

Эти переменные задаются в файле class-wc-gateway-payfast.php в функции generate_payfast_form следующим образом (мойтекущий woocommerce-payfast-gateway v1.4.9 ):

'return_url' => $this->get_return_url( $order ),
'cancel_url' => $order->get_cancel_order_url(),
'notify_url' => $this->response_url,

Вы можете открыть вкладку сети браузера (инструменты разработчика), если хотите увидеть, какие URL-адреса публикуются наhttps://www.payfast.co.za/eng/process.Это может помочь вам определить, в чем заключается проблема, путем просмотра структуры URL-адресов, по которым осуществляется отправка.

Если ваша ситуация становится ужасной, и вы не можете получить помощь по соответствующим каналам поддержки, тогда вы можете жестко закодироватьURL-адреса: ПРИМЕЧАНИЕ. Это последнее средство, которое не рекомендуется !!

'return_url' => 'https://www.yoursite.com/',
'cancel_url' => 'https://www.yoursite.com/',
'notify_url' => 'https://www.yoursite.com/?wc-api=WC_Gateway_PayFast',

Если вы намерены жестко закодировать URL-адреса до устранения проблемы, запомните сначала выполните тестовую транзакцию в изолированной программной среде PayFast , чтобы убедиться, что ваши URL-адреса перенаправления работают и что заказ обновляется в соответствии с ожиданиями (правильный notify_url).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...