В общем да, совершенно случайно обнаружил, что перестала выводится надпись «Ваш комментарий ожидает проверки», при добавлении новых комментариев на моих сайтах на движке WordPress. Думаю, что за срань происходит?!
Сначала начал грешить на кривонастроенный кеш nginx. Но нет, перепроверил, все было там ок.
Видимо, что-то с кодом не так. Начал разбираться… Хоть убейся об стену, все тоже вроде ОК.
Закрались сомнения, «а был ли мальчик»(с). Блин может она уже давно не работала?? Ну если так, все равно надо починить, а то как-то совсем не торт!
К слову сказать, у меня немного модифицированная форма комментов. (Убрал добавление адреса, чтоб не спамили..)
Вспоминаю, что на днях обновлял сайты. Значит, что-то с обновой прилетело.
Лезу в исходники… пока все норм.
И тут я вспоминаю про одну херню, не давно появившуюся — GDPR
ДА-ДА! Блеать, именно GDPR всему виной!
Сколько же было снова лучей поноса в их адрес… :D
Короче, суть в чем, нужно в форму комментов добавить сраную галочку — о том что, мол: Да Я хочу «Сохранить моё имя, email и адрес сайта в этом браузере для последующих моих комментариев.»
В общем добавил. И вот чтобы теперь лицезреть «Ваш комментарий ожидает проверки» — Вначале нужно цикнуть эту галочку. Если этого не сделать, коммент все равно уйдет на проверку, но страница просто перезагрузится, а Вам ничего не сообщит…
Да-да! Вот такой вот костыль… Жиззь в новых реалиях.
Ну, это была лирика..:)
Вот что надо сделать.
В файл comments.php нужно добавить 2 строчки:
$consent = empty( $commenter['comment_author_email'] ) ? '' : ' checked="checked"';
'cookies' => '<p class="comment-form-cookies-consent"><input id="wp-comment-cookies-consent" name="wp-comment-cookies-consent" type="checkbox" value="yes"' . $consent . ' />' . '<label for="wp-comment-cookies-consent">' . __( 'Save my name, email, and website in this browser for the next time I comment.' ) . '</label></p>',
Приведу пример своего файла, думаю разберетесь:
<?php $commenter = wp_get_current_commenter(); $req = get_option( 'require_name_email' ); $aria_req = ( $req ? " aria-required='true'" : '' ); $consent = empty( $commenter['comment_author_email'] ) ? '' : ' checked="checked"'; $fields = array( 'author' => '<p class="comment-form-author">'. '<input id="author" name="author" type="text" '. ( $req ? 'required ' : '' ) .' placeholder="'. __( 'Name' ) . '" value="' . esc_attr( $commenter['comment_author'] ) . '" size="30"' . $aria_req . ' /></p>', 'email' => '<p class="comment-form-email">'. '<input id="email" name="email" type="text" '. ( $req ? 'required ' : '' ) .' placeholder="'. __( 'Email' ) . '" value="' . esc_attr( $commenter['comment_author_email'] ) . '" size="30"' . $aria_req . ' /></p>', 'cookies' => '<p class="comment-form-cookies-consent"><input id="wp-comment-cookies-consent" name="wp-comment-cookies-consent" type="checkbox" value="yes"' . $consent . ' />' . '<label for="wp-comment-cookies-consent">' . __( 'Save my name and email in this browser for the next time I comment.' ) . '</label></p>', ); $comments_args = array( 'fields' => $fields, 'comment_notes_before' => '', // 'comment_notes_after' => '<p class="comment-notes">' . __( 'Your email address will not be published.' ) . ( $req ? $required_text : '' ) . '</p>', 'comment_field' => '<p class="comment-form-comment">' . '<textarea id="comment" name="comment" cols="45" rows="4" aria-required="true" placeholder="'. __( 'Add your comment...' ) . '">' . '</textarea></p>', // 'title_reply' => 'Add Your Comment', 'title_reply' => '', 'label_submit' => 'Submit' ); comment_form($comments_args); ?>
Ну и для «красоты» в css:
#respond form p.comment-form-cookies-consent{float:left;width:70%;font-size:12px;color:#777;} #respond form p.comment-form-cookies-consent input[type="checkbox"]{width:4%;cursor:pointer;float:left} #respond form p.comment-form-cookies-consent label{width:93%;cursor:pointer} .comment-awaiting-moderation{color:#fff;display:block;background:#78909C;padding:8px;}
Получится что-то типа того:
Вроде все. Если возникли вопросы, пишите в комментарии :D
5 комментариев: Не выводится «Ваш комментарий ожидает проверки» — WordPress 4.9.6+