Intereting Posts
Почему previous_post_link и next_post_link работают вне Loop? Установите значение параметра по умолчанию как пустое для метабокса Показать сообщения на пользовательской странице Как получить это значение внутри RETURN Мне нужно найти, какой файл проверяет БД для правильного входа (имя пользователя, пароль) как объединить поиск по ключевым словам и таксономию в массиве WP_query $ args Worpresss Как эхо преобразовать настраиваемое поле? Сообщения WordPress с несколькими данными post_meta Как уменьшить размер изображений, которые присутствуют в папке uploads? Заказать символ по заголовку сообщения Как я могу вставить динамический URL-адрес в свой шаблон электронной почты? WordPress: как получить текущий зарегистрированный URL-адрес страницы автора? Worpress поиск определенного типа сообщения Изменение постоянной информации Структура для последовательного номера для каждого сообщения? Перемещение некоторых статей на новый сайт

is_user_logged_in ничего не возвращает на пользовательской странице

Я пытаюсь использовать аутентификацию WordPress на пользовательской странице PHP, но при проверке «is_user_logged_in» он ничего не возвращает и другие функции также не возвращают ничего полезного.

Код, который я использую:

require $_SERVER['DOCUMENT_ROOT'] . "/wp-load.php"; require $_SERVER['DOCUMENT_ROOT'] . "/wp-blog-header.php"; print_r(is_user_logged_in()); 

Перед тестированием я зашел в область администратора. При входе в систему или выходе из системы функция все равно ничего не возвращает и ошибок PHP нет.

Solutions Collecting From Web of "is_user_logged_in ничего не возвращает на пользовательской странице"

Является ли моя глобальная настройка?

Как вы можете видеть из обзора «Справка» -панель, когда вы используете мою текущую информацию о экране «Admin Admin» « 1) , в коде есть определенные пункты / крючки / фильтры, которые должны пройти до глобальный.

введите описание изображения здесь

1) Ищите лучшее имя.

Когда зацепиться?

Вчера, читая чат WPSE, у меня была хорошая идея, которая была основой для вышеупомянутого плагина. Чтобы дать вам представление о том, как проверить, настроен ли глобальный режим, просто прочитайте следующий код:

 function get_hook_for_global() { $global = $GLOBALS['some_global']; if ( isset( $global ) ) { remove_filter( current_filter(), __FUNCTION__ ); return print "Global: $global<br />Set on: ".current_filter(); } } add_action( 'all', 'get_hook_for_global' ); 

Это печатает содержимое глобального, а также фильтр, в котором он был установлен.

Улучшение проверки

Если вы хотите иметь подробный вывод, вам также нужно будет добавить обработку array/object :

 // Object/Array handling: Dump contents if ( is_array( $global ) OR is_object( $global ) ) $global = var_export( $global, true ); 

Вы не можете загрузить WordPress таким образом и работать с механизмами аутентификации. Файловые файлы cookie привязаны к URL-адресу сайта и отправляются только этим URL-адресам. Если ваша схема URL-адресов выходит за рамки обычной схемы URL-адреса WordPress, тогда она не получит файлы cookie, и вы не войдете в WordPress при доступе к ней через этот URL-адрес.

Другими словами, вы не можете проверить аутентификацию так, как вы пытаетесь ее проверить. Просто включить wp-load.php недостаточно для проверки подлинности.