Как вывести другие посты автора публикации без плагинов

Если у вас в блоге пишут несколько авторов, то есть резон выводить в конце публикации или в сайдбаре ссылки на предыдущие публикации автора, написавшего текущий пост. Такой подход позволяет не отпускать читателя, заинтересовывает его как можно дольше оставаться на сайте.

Можно создать функцию, которая с помощью шорткода будет выводить список других публикаций автора. Такой шорткод можно вставлять прямо в пост.
Откройте файл functions.php и вставьте в него такой код:

function latest_posts_by_author($array) {
extract(shortcode_atts(array('author' => 'admin', 'show' => 5), $array));

global $wpdb;
$table = $wpdb->prefix . 'users';
$result = $wpdb->get_results('SELECT ID FROM '.$table.' WHERE user_login = "'.$author.'"');
$id = $result[0]->ID;
$table = $wpdb->prefix . 'posts';
$result = $wpdb->get_results('SELECT * FROM '.$table.' WHERE post_author = '.$id.' AND post_status = "publish" AND post_type = "post" ORDER BY post_date DESC');
$i = 0;
$html = '';

return $html;
}

add_shortcode('latestbyauthor', 'latest_posts_by_author');

Теперь остается только в пост в режиме HTML вставить шорткод:

[latestbyauthor author="username" show="5"]

username – это имя автора, а 5 – количество выводимых постов. А хотите выводить не просто названия постов, а еще и их краткое содержимое? Тогда используйте такой шорткод:

[latestbyauthor author="username" show="5" excerpt="true"]

Шорткоды позволяют выводить список постов только в записях. Чтобы можно было выводить этот список в любом другом месте, можно использовать такую конструкцию:


Пользуйтесь!

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

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

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

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


*