Так и не понял, почему осуществляется редирект. Сделал костылем. При открытии страницы с постом осуществляется редирект обратно на страницу с категорией.
Часть кода в single.php:
if ( $_POST['action'] == 'update-user' ) {
//var_dump($_POST['action']);
if (!($_POST['updateuser'] == 'Отписаться')) {
$NewCategoryID = get_the_category();
$user_info = get_the_author_meta('user_categories',$current_user->ID);
$NewUserCategories = $user_info.','.$NewCategoryID[0]->term_id;
update_usermeta( $current_user->ID, 'user_categories', $NewUserCategories);
$LinkToPage=get_category_link($NewCategoryID[0]->term_id);
wp_redirect( $LinkToPage );
exit;
} else {
$NewCategoryID = get_the_category();
$user_info = get_the_author_meta('user_categories',$current_user->ID);
$intNumCategory = strpos($user_info, (string)$NewCategoryID[0]->term_id);
if ($intNumCategory == 0) {
$StrNewCategoryID = $NewCategoryID[0]->term_id.',';
} else {
$StrNewCategoryID = ','.$NewCategoryID[0]->term_id;
}
$NewUserCategories = str_replace($StrNewCategoryID,'',$user_info);
update_usermeta( $current_user->ID, 'user_categories', $NewUserCategories);
$LinkToPage=get_category_link($NewCategoryID[0]->term_id);
wp_redirect( $LinkToPage );
exit;
}
}