Условное перенаправление WordPress, если URL реферера не совпадает - PullRequest
0 голосов
/ 02 июля 2018

Я пытаюсь добавить условный вход в систему, если номер страницы совпадает, а wp_get_referer совпадает с $ value, но я не знаю, застрял, некоторые из них были

add_action( 'template_redirect', 'wpse15677455_redirect' );

function wpse15677455_redirect() {
  $ref = wp_get_referer();
  $value = ('https://mywebsite.com/quotaton/') ;
    if (!is_page(555)) & $ref => $value {
        wp_redirect( home_url() ); 
        // exit; //( I also dont know if need exit if i add this code in function)
    }
 };

Также я думаю об этом как о решении, которое я не знаю, правильно это или нет

add_action( 'template_redirect', 'wpse15677455_redirect' );
 function wpse156774_redirect() {
    $ref = wp_get_referer();
    if (is_page(555)) &&  if (strpos($ref, 'quotaton') !== false) {
        echo 'true';
    }
};

Заранее спасибо

Ответы [ 2 ]

0 голосов
/ 03 июля 2018

После того, как я понял условия, я нашел решение:

add_action( 'template_redirect', 'wpse1567745555_redirect' );  
function wpse1567745555_redirect() {
  $ref = wp_get_referer();
    if (is_page(227) && $ref == "https://mywebsite/quotaton/") {
        //echo 'Its Working Let it Continue';
    }
    else if (is_page(227) && $ref !== "https://mywebsite/quotaton/"){
        wp_redirect( 'https://mywebsite/sorry/', 301 ); exit;
        // Not Working Let's Redirect and exit 
    }
    else if (!is_page(227)){
          // echo 'Its Not Need Anything Here';
    }
}

Приведенный выше код полезен для WordPress в том случае, если вы хотите разрешить пользователю доступ только к определенной странице, если он поступает с определенного URL.

Если есть предложения, добавьте их.

0 голосов
/ 02 июля 2018

Ваш вопрос мне не понятен. Но я думаю, вы ищете это.

add_action( 'template_redirect', 'wpse15677455_redirect' );

function wpse15677455_redirect() {

  $value = ('https://mywebsite.com/quotaton/') ;
    if (!is_page(555) & wp_get_referer() !== $value ) {

       wp_safe_redirect( get_home_url() );

    }
 };
...