Per preprocess_comment — как получить значение кастомного поля
Передал в форму комментария скрытое поле через "comment_form_default_fields"
$fields['comment_user_edit'] = '<input id="comment_user_edit" name="comment_user_edit" type="hidden" value="" />';
В базу данных всё заноситься, но не могу проверить заполнено ли оно через хук фильтр "preprocess_comment" т.к. не нашел его в массиве $comment.
Подскажите кто в курсе как правильно проверить это поле при отправке коммента и блокнуть при определенных условиях..
add_filter( 'preprocess_comment', 'wpb_preprocess_comment' ); function wpb_preprocess_comment($comment) { if ($comment['comment_user_edit']) { wp_die( '<p>Сообщение юзеру</p> <div style="text-align: center;"><input type="button" onclick="history.back();" value="Вернуться к сообщению"/></div>' ); } return $comment; }
Для комментов разрешен определенный список полей см. wp_handle_comment_submission():
Свое касомное поле получай через
$_POST['comment_user_edit']
и проверить почистить не забудь.Спасибо! В итоге вышло реализовать возможность редактировать комменты для незарегистрированных пользователей..
Конечно это сырой вариант, т.к. нужно сделать еще защиту от перебора и/или подтверждение по почте.