Как добавить виджет с последними комментариями на сайт WordPress?
// Function to display recent comments widget
function my_recent_comments_widget() {
// Code to display recent comments
}
add_action('widgets_init', 'my_recent_comments_widget');
Я не очень хорошо разбираюсь в PHP и WordPress, поэтому не могу самостоятельно решить эту проблему. Может быть, кто-то может подсказать мне, как правильно изменить этот код, чтобы он работал так, как я описала выше?
Заранее спасибо! Ответы:
Чтобы реализовать отображение последних комментариев в виде списка с указанием автора, даты и самого комментария, а также для фильтрации комментариев по категории, вам понадобится внести некоторые изменения в ваш код.
Вот обновленный код для добавления виджета:
// Function to display recent comments widget
function my_recent_comments_widget() {
// Set the category ID of the desired category
$category_id = 1; // Замените значение на ID вашей категории
// Get the recent comments for the specified category
$args = array(
'number' => 5, // Количество комментариев для отображения
'status' => 'approve', // Утвержденные комментарии
'post_status'=> 'publish', // Опубликованные посты
'category' => $category_id // ID выбранной категории
);
$comments_query = new WP_Comment_Query;
$comments = $comments_query->query( $args );
// Display the recent comments in a list
echo '';
foreach ( $comments as $comment ) {
$comment_author = get_comment_author( $comment->comment_ID );
$comment_date = get_comment_date( 'd.m.Y', $comment->comment_ID );
$comment_content = $comment->comment_content;
echo '- '. $comment_author .' - '. $comment_date .''. $comment_content .'
';
}
echo '
';
}
add_action('widgets_init', 'my_recent_comments_widget');
В этом коде мы добавили переменную `$category_id`, которая содержит ID вашей выбранной категории. Затем мы используем эту переменную в аргументе `'category'` для выбора комментариев только из этой категории.
Далее мы используем `WP_Comment_Query` для получения списка комментариев, удовлетворяющих указанным критериям. Затем мы выводим эти комментарии в виде списка, используя цикл `foreach` и функции `get_comment_author`, `get_comment_date` и `get_comment_content`.
Вы можете настроить количество комментариев для отображения, изменяя значение `'number'` в аргументе `$args`. Также, поменяйте значение `$category_id` на нужный ID вашей категории.
Надеюсь, это поможет вам решить вашу проблему с виджетом последних комментариев на вашем сайте WordPress!