Как настроить вывод комментариев пользователя из текущей сессии в отдельном разделе на странице, чтобы показывались только его собственные комментарии? Например, когда Вася оставил 5 комментариев, чтобы отображались именно его 5 комментариев в отдельной области на странице.
Для отображения комментариев определенного пользователя, который находится в текущей сессии на сайте WordPress, можно использовать следующий код:
```php
$current_user = wp_get_current_user();
$user_comments = get_comments( array(
'user_id' => $current_user->ID,
'status' => 'approve', //только одобренные комментарии
) );
foreach ( $user_comments as $comment ) {
echo '<p>' . $comment->comment_content . '</p>';
}
```
Для создания отдельного раздела на странице, где будут отображаться только комментарии текущего пользователя, вам необходимо создать шаблон страницы с нужной разметкой и использовать в нем вышеуказанный код. Можно также добавить дополнительные дополнительные фильтры и возможность пагинации для удобства пользователя.
Поместите созданный шаблон страницы в тему вашего сайта и создайте страницу в административной панели WordPress, используя этот шаблон. После этого пользователь сможет видеть только свои комментарии на этой странице.
Если что, делается это вот так. (собрано на коленке, но работает). <br/> <br/> <pre><code class="php"><?php
$args = array(
'post_author' => $current_user->ID,
'number' => 10, // how many comments to retrieve
'status' => 'approve'
);
$comments = get_comments( $args );
if ( $comments )
{
$output.= "<ul>\n";
foreach ( $comments as $c )
{
$output.= '<li>';
// $output.= '<a href="'.get_comment_link( $c->comment_ID ).'">';
$output.= get_comment_text($c->comment_ID);
$output.= '</a>, Posted on: '. mysql2date('m/d/Y', $c->comment_date, $translate);
$output.= "</li>\n";
}
$output.= '</ul>';
echo $output;
} else { echo "No comments made";}
?></code></pre>