Как добавить placeholder в поля комментария comment_form()

Опубликовано: 08.10.2017

Хак для WordPress, который позволит прописать внутри полей комментария (input) поясняющий для посетителя текст. Другими словами: сделаем placeholder для шаблонов с comment_form().

После этого внутри полей "Имя", "Почта" и "Url" будет написан поясняющий текст. Смотрите скриншоты ниже.

Повторюсь: решение для тех, у кого форма комментариев выводится функцией comment_form() (ищите в comments.php что-то типа такого <?php comment_form(); ?> )

Пример с первого попавшегося блога в сети:

Клик для увеличения

Здесь видим слова "Имя", "Email" и пр. за пределами самих полей ввода данных.

У меня же на блоге это выглядит так:

Клик для увеличения

Надписи появились уже внутри полей.

Вставляем в functions.php следующий код и правим его под себя (текст, стили):

// placeholder в поля комментариев function my_update_fields ( $fields ) { $commenter = wp_get_current_commenter ( ) ; $req = get_option ( 'require_name_email' ) ; $aria_req = ( $req ? " aria-required='true'" : '' ) ;   $fields [ 'author' ] = '<p class="comment-form-author"> <input required minlength="3" maxlength="30" placeholder="Ваше имя*" id="author" name="author" type="text" value="' . esc_attr ( $commenter [ 'comment_author' ] ) . '" size="30"' . $aria_req . ' /> </p>' ;   $fields [ 'email' ] = '<p class="comment-form-email"> <input required placeholder="Ваш Email*" id="email" name="email" type="email" value="' . esc_attr ( $commenter [ 'comment_author_email' ] ) . '" size="30"' . $aria_req . ' /> </p>' ;   $fields [ 'url' ] = '<p class="comment-form-url"> <input placeholder="Ваш сайт (если есть)" id="url" name="url" type="url" value="' . esc_attr ( $commenter [ 'comment_author_url' ] ) . '" size="30" /> </p>' ;   return $fields ; } add_filter ( 'comment_form_default_fields' , 'my_update_fields' ) ;

// placeholder в поля комментариев function my_update_fields($fields) { $commenter = wp_get_current_commenter(); $req = get_option( 'require_name_email' ); $aria_req = ( $req ? " aria-required='true'" : '' ); $fields['author'] = '<p class="comment-form-author"> <input required minlength="3" maxlength="30" placeholder="Ваше имя*" id="author" name="author" type="text" value="' . esc_attr( $commenter['comment_author'] ) . '" size="30"' . $aria_req . ' /> </p>'; $fields['email'] = '<p class="comment-form-email"> <input required placeholder="Ваш Email*" id="email" name="email" type="email" value="' . esc_attr( $commenter['comment_author_email'] ) . '" size="30"' . $aria_req . ' /> </p>'; $fields['url'] = '<p class="comment-form-url"> <input placeholder="Ваш сайт (если есть)" id="url" name="url" type="url" value="' . esc_attr( $commenter['comment_author_url'] ) . '" size="30" /> </p>'; return $fields; } add_filter('comment_form_default_fields','my_update_fields');

rss