[РЕШЕНО 90%] Страница комментарии
однажды на сайте увидел что боты ломятся на необычный адрес, когда его открыл, то увидел что это отдельная часть поста без всего содержания и на ней только присутствует форма для комментариев. Такую страницу убил какимто плагином.
Теперь не могу вспомнить как выглядят такие адреса , может кто знает , а то не могу найти.
Работаю над тестом AMP - и там стандартная форма не подходит , но можно оставить ссылку на отдельную страницу записи с выводом комментариев.
может кто что знает и подскажет
это решение не работает
https://medium.com/@surajair/creating-comment-form-on-amp-pages-in-wordpress-9dd675ba383b (тут кстати комментарии включаются не на записи а по отдельной кнопке на отдельной странице) вот так и я хочу
решено,
1 создал кастомную страницу "comments" с шаблоном ниже
<?php /* * Template name: Проверка */ ?> <?php get_header(); ?> <?php // можно и другой URL по типу https://m.site.com/comments/435656456/ // b тут уже не через GET получать а регуляркой извлеакть id страницы $post_id = $_GET['post_id']; // val1 // Получаем комментарии поста с ID XXX из базы данных $comments = get_comments(array( 'post_id' => $post_id , 'status' => 'approve' // комментарии прошедшие модерацию )); // Формируем вывод списка полученных комментариев wp_list_comments(array( 'per_page' => 10, // Пагинация комментариев - по 10 на страницу 'reverse_top_level' => false // Показываем последние комментарии в начале ), $comments); $post_id = $_GET['post_id']; // val1 comment_form( $args, $post_id ); ?> <?php get_footer(); ?> <?php /* * Template name: Проверка */ ?> <?php get_header(); ?>
2 создал редирект в файле функций
add_filter('comment_post_redirect', 'redirect_after_comment'); function redirect_after_comment($location) { return $_SERVER["HTTP_REFERER"]; }
3 Добавил кнопку на пост - с урл
https://m.site.com/comments/?post_id=31054
4 подскажите как добавить проверка на текущую страницу , чтоб редирект работал толко на новой созданной странице, так не срабатывает
if( is_page( 31084 ) ){ add_filter('comment_post_redirect', 'redirect_after_comment'); function redirect_after_comment($location) { return $_SERVER["HTTP_REFERER"]; } }