wp_get_current_commenter()
Получает имя, почту, URL текущего комментатора из куков. Используется для формы комментариев.
Данные берутся из куков, которые добавляются неавторизованным пользователям при комментировании.
Ожидает, что данные в куках уже очищены. Иногда есть смысл проверить вернувшиеся данные.
Хуки из функции
Возвращает
Массив
. Массив данных в виде:
Array( [comment_author] => Kama [comment_author_email] => fooo@gmail.com [comment_author_url] => https://example.com/mypage )
Использование
wp_get_current_commenter();
Примеры
#1 Демонстрация того, что получает функция
Получим значения полей формы комментирования для неавторизованного пользователя.
$commenter = wp_get_current_commenter(); print_r( $commenter ); /* Array( [comment_author] => Kama [comment_author_email] => fooo@gmail.com [comment_author_url] => https://example.com/mypage ) */
#2 Вывод полей формы комментирования
Этот пример показывает как вывести поля: Имя, Почта и Сайт с предварительным заполнением данных если они есть в куках:
// получим данные из куков $commenter = wp_get_current_commenter(); // определим поля которые нужно вывести $req = get_option( 'require_name_email' ) ? ' <span class="required">*</span>' : ''; $aria_req = $req ? " aria-required='true'" : ''; $html_req = $req ? " required='required'" : ''; $fields = [ 'author' => '<p class="comment-form-author">' . '<label for="author">Имя' . $req . '</label> ' . '<input id="author" name="author" type="text" value="' . esc_attr( $commenter['comment_author'] ) . '" size="30" maxlength="245"' . $aria_req . $html_req . ' /></p>', 'email' => '<p class="comment-form-email"><label for="email">Email' . $req . '</label> ' . '<input id="email" name="email" type="text" value="' . esc_attr( $commenter['comment_author_email'] ) . '" size="30" maxlength="100" aria-describedby="email-notes"' . $aria_req . $html_req . ' /></p>', 'url' => '<p class="comment-form-url"><label for="url">Сайт</label> ' . '<input id="url" name="url" type="text" value="' . esc_attr( $commenter['comment_author_url'] ) . '" size="30" maxlength="200" /></p>', ]; // выводим имеющиеся поля foreach( $fields as $field ){ echo $field; }
Заметки
- Смотрите: sanitize_comment_cookies() Use to sanitize cookies
Список изменений
С версии 2.0.4 | Введена. |