Шорткод для вывода комментариев текущего пользователя

WordPress является отличной системой управления сайтом, позволяя создавать сайты самого разного предназначения, от визиток и портфолио до сложных корпоративных порталов и интернет-магазинов. Однако что для меня не понятно, так это почему до сих пор не реализована на уровне движка работа с пользователями – нет элементарного виджета для вывода подробной информации об авторе, нет механизмов работы с текущим пользователем. Все, что есть, так это вывод аватара текущего пользователя и ссылка на профиль. Но в современных реалиях этого не достаточно, и поэтому приходится искать дополнительные плагины, сочинять код, который хоть как-то компенсирует отсутствующий, но весьма востребованный функционал.

Шорткод для вывода комментариев текущего пользователя

В одном блоге была поставлена задача вывода последних комментариев текущего пользователя на его странице-профиле. Задача вроде простая, но WordPress не предоставляет никаких инструментов для ее решения. Поэтому пришлось ее решать своими силами. В итоге я внедрил шорткод, с помощью которого можно выводить заданное количество комментариев текущего, залогиненного пользователя.

Код шорткода для вставки в файл functions.php:

function show_recent_comments_function( $atts, $content = null )
{
  extract( shortcode_atts( array( 
    "count" => 10, //количество выводимых комментариев
    "pretty_permalink" => 0
    ), $atts ));

  $output = '';
  
  if ( is_user_logged_in() )
  {
    global $current_user;
    get_currentuserinfo();

    $args = array(
      'user_id' => $current_user->ID,
      'number' => $count,
      'status' => 'approve' //показывать только одобренные администратором комментарии
      );

    $comments = get_comments( $args );
    if ( $comments )
    {
      $output.= "n";
      foreach ( $comments as $c )
      {
      $output.= '
'; if ( $pretty_permalink ) $output.= 'n"; } $output.= ''; } } else { $output.= "
Просмотр собственных комментариев комментариев доступен только зарегистрированным пользователям. Войти.
"; } return $output; } add_shortcode ( 'sr_comments', 'show_recent_comments_function' );

Для вывода комментариев текущего пользователя на отдельной странице (например, на специальной странице доступного профиля), нужно вставить шорткод в содержимое страницы:

[sr_comments]

По-умолчанию выводятся последних 10 комментариев текущего пользователя, но это количество можно изменить, указав в шорткоде параметр:

[sr_comments count=25]

Чтобы внедрить вывод комментариев текущего пользователя непосредственно в шаблон, можно использовать функцию:


Просто. Гибко. Удобно.

Автор tiaurus 2182 Articles
Являюсь создателем n-wp.ru — блога о WordPress для новичков. Мне интересно многое, поэтому еще я сделал 123-box.ru — блог о программах для Windows, и tiaurus.info — блог о красоте.

Оставьте первый комментарий

Оставить комментарий

Ваш электронный адрес не будет опубликован.


*