Перенаправить пользователя, если реферер не связан с PayPal

Я создал страницу:

http://mypage.com/paypal

с пользовательским шаблоном, который содержит код для захвата ipn-ответа от paypal и т. д.

Теперь мне нужно перенаправить пользователей случайно или на целевой доступ

http://mypage.com/paypal

Я хочу разрешить это только тогда, когда пользователь перенаправляется с URL-адреса PayPal. например, если он содержит http://paypal.com или https://paypal.com тогда это нормально, но все другие права доступа перенаправляются на домашнюю страницу WP.

Как это сделать?

Solutions Collecting From Web of "Перенаправить пользователя, если реферер не связан с PayPal"

Что вы делаете, так это передать аргумент URL-адреса возврата Paypal. Например:

Таким образом, ваш URL-адрес возврата может выглядеть следующим образом:

 $url = home_url(); $url = add_query_arg( array( 'paypal' => '8832002472223abc' ), $url ); $paypal_ipn = array( 'return_url' => $url // rest of your ipn data ) 

В вашем шаблоне IPN вы можете иметь что-то вроде этого:

 if ( ! isset( $_GET['paypal'] ) || $_GET['paypal'] !== '8832002472223abc' ) { $url = home_url(); wp_safe_redirect( $url ); exit; } 

Таким образом, с этим кодом, когда кто-либо отправляется на вашу страницу шаблона IPN, будет перенаправлен, если у них нет этой комбинации клавиш =>.