sputnickk
@sputnickk

Как сделать перенаправление в Wordpress?

Всем привет!

Хочу чтобы с админки нельзя было добавить пост, а только через фронтэнд, для этого хочу редирект сделать:

add_action( 'template_redirect', function() {
    if ( preg_match( '*/wp-admin/post-new.php?post_type=events', $_SERVER['REQUEST_URI'] ) ) {
        wp_redirect( '/add-event', 301 );
        exit;
    }
} );


в function.php добавил, но что то не работает
  • Вопрос задан
  • 39 просмотров
Пригласить эксперта
Ответы на вопрос 2
mahmudchon
@mahmudchon
У вас в теле условия ошибка в первом параметре, а также отсутствует третий, при указании второго. Читайте документацию.
Просто сделайте так:
...
if($_SERVER['REQUEST_URI'] == '/wp-admin/post-new.php?post_type=events') {
...
Ответ написан
@weart
Запретите вообще доступ в админку не админам, а то не логично получается

function redirect_non_admin_users() {	
    // if user not delete posts
	if ( !isset( $_GET[ 'action'] ) && !current_user_can( 'edit_others_posts' ) && '/profile/' != $_SERVER['PHP_SELF'] ) {
		wp_redirect( home_url( '/profile/' ) );
		exit;
	}
}
add_action( 'admin_init', 'redirect_non_admin_users' );
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
13 дек. 2019, в 03:35
1000 руб./за проект
13 дек. 2019, в 01:31
1000 руб./за проект