Доброго дня!
Стоит задача, если кто-то неизвестный перешёл по ссылке на страницу, содержащую в адресе определённые слова, его редиректит, т.е. вход туда только авторизованным юзерам.
Нашёл пару примеров, что-то попытался приспособить, но не работает ни через 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 );
}