Домой WordPress WordPress: Вопросы и ответы Редирект незалогиненного пользователя с выделенного массива определённых страниц
3 ответ(ов) в теме
Shrumi
не в сети 2 недели
На сайте с 14.06.2020
Участник
Тем 1
Сообщения 2
1
14:51

Доброго дня!

Стоит задача, если кто-то неизвестный перешёл по ссылке на страницу, содержащую в адресе определённые слова, его редиректит, т.е. вход туда только авторизованным юзерам.

Нашёл пару примеров, что-то попытался приспособить, но не работает ни через a-fixator ни в хедере.
Если можно, укажите пожалуйста на ошибки, и\или приведите рабочий пример.
И куда его прописывать всё-таки?

global $wp;
$current_url = '';
$secretCategories = '';
$secretCourses = '';

$secretCategories = ('kategorii');
$secretCourses = ('kursy');

function access_granted(){
global wp, wp_parse_url, wp-redirect;

$current_url = home_url(add_query_arg(array($_GET), $wp->request));
$pages = preg_match ( $current_url, $secretCategories or $secretCourses) ;
$parts = wp_parse_url ($pages, PHP_URL_PATH);

if (!is_user_logged_in ()) && (($secretCategories === $parts) or ($secretCourses === $parts)) ) {
wp_redirect('https://page-to-redirect/');

}
}

Или

$needToRedirect = FALSE;
if (strpos($_SERVER['REQUEST_URI'],$secretCategories !== FALSE)) {
$needToRedirect = TRUE;
} elseif (strpos($_SERVER['REQUEST_URI'],$secretCourses !== FALSE)) {
$needToRedirect = TRUE;
}
if ($needToRedirect && !is_user_logged_in ()) {
$location = 'https://page-to-redirect/';
wp_redirect ( $location );
}

0
Владимир (Otshelnik-Fm)
не в сети 4 часа
На сайте с 27.01.2013
Модератор
Тем 30
Сообщения 16940
2
16:00

Здравствуйте.

Тема перенесена из вопросов по сервису кодеселлер, в ветку вопросов по вордпресс.

Если ответа не найдете - спросите волонтеров вордпресс на их официальном форуме поддержки.

0
Shrumi
не в сети 2 недели
На сайте с 14.06.2020
Участник
Тем 1
Сообщения 2
3
20:53

Хорошо, спасибо. Мне кажется, здесь быстрее будет, и надёжнее.. )

0
Вы не имеете права на публикацию сообщений в этой теме