Intereting Posts
Получить список сроков – Заказ Некоторое количество сообщений не отображается в DB Search Как получить идентификаторы категорий из настроек виджета? Панель администратора WP исчезла После обновления Woocommerce 3.1.1 в 3.2.1 код купона не работает Показывать сообщение на панели управления wordpress admin Случайный элемент в массиве get_post_meta Получить идентификатор пользователя из плагина Как добавить пользовательский URL-адрес для страницы? Отфильтровать_содержание, чтобы добавить что-то перед каждым элементом <h1>? Как избежать загрузки wp-load.php из внешних php-скриптов? Создание сайта каталога подкастов – как разрешить пользователю загружать «большие» файлы? Сообщение, отображающее только текст переносить комментарии из старой базы данных в новую базу данных избегая отображения определенных категорий для определенных ролей пользователей во время ввода контента

Получить имя и адрес электронной почты текущего незарегистрированного пользователя, который недавно отправил имя и адрес электронной почты в форме комментариев?

Внутри плагина WordPress есть ли способ получить имя и адрес электронной почты текущего пользователя, когда он / она не вошли в систему, но недавно отправил комментарий и указанное имя и адрес электронной почты в форме ответа на комментарий?

Или имя и адрес электронной почты доступны только во время HTTP-запроса, в котором обрабатывается [комментарий, отправленный пользователем]?

(Когда пользователь не вошел в систему, WP_User возвращаемый wp_get_current_user() содержит информации о имени пользователя или имени пользователя, который я заметил при отладке.)

(Предыстория: я пишу плагин оценки комментариев, и я хотел бы выделить рейтинги пользователей, даже если он / она не является зарегистрированным пользователем. Как уже упоминалось в комментариях ниже, возможно, некоторые файлы cookie понадобятся в любом Я все еще заинтересован в том, чтобы знать ответ на этот вопрос, возможно, я мог бы повторно использовать некоторые существующие функции или что-то еще)

Незарегистрированное имя пользователя и адрес электронной почты доступны в файлах cookie, как только он / она оставил комментарий. Печеньки называются:

 comment_author_3e6aea64ec43ed661a5dee3433f1e8bc comment_author_email_3e6aea64ec43ed661a5dee3433f1e8bc 

Вы можете получить их так:

 sanitize_comment_cookies(); wp_get_current_commenter(); // returns comment_author, // comment_author_email, comment_author_url 

Они созданы здесь в comment.php :

 /** * Sets the cookies used to store an unauthenticated commentator's identity. Typically used * to recall previous comments by this commentator that are still held in moderation. * * @param object $comment Comment object. * @param object $user Comment author's object. * * @since 3.4.0 */ function wp_set_comment_cookies($comment, $user) { if ( $user->exists() ) return; $comment_cookie_lifetime = apply_filters('comment_cookie_lifetime', 30000000); setcookie('comment_author_' . COOKIEHASH, $comment->comment_author, ...); setcookie('comment_author_email_' . COOKIEHASH, $comment->comment_author_email, ...); setcookie('comment_author_url_' . COOKIEHASH, ...); } 

(Я узнал, wp-comments-post.php через wp-comments-post.php с помощью отладчика.)

((Как уже упоминалось в комментариях ниже первоначального вопроса выше, не может ли это иногда быть проблемой конфиденциальности, если кто-то публикует комментарий в публичной библиотеке – тогда тот, кто использует компьютер впоследствии, может найти те комментарии, которые «ждут» аутентификация ", и знать, кто их написал, хм))