Если вы являетесь единственным автором своего сайта, то, возможно, вам такая
страница и не нужна, но на сайтах с коллективным авторством она наверняка пригодится.
Как это работает?
Вы создаете специальный файл для вывода информации об авторе, на странице записей ставите ссылку на него, а после того, как автор заполнит свой профиль в админке блога, все желающие смогут увидеть информацию о нем на авторской странице.
Итак, создаем файл author.php.
Для этого делаем копию файла single.php и переименовываем его в author.php. Находим в этом файле строку:
<?php if (have_posts()) : while (have_posts()) : the_post(); ?> |
И заменяем ее следующим кодом:
<?php if (have_posts()) : ?> <?php if(isset($_GET['author_name'])) : $curauth = get_userdatabylogin(get_the_author_login()); else : $curauth = get_userdata(intval($author)); endif; ?> |
В названии пишем:
<h2>Об авторе <?php echo $curauth->display_name; ?></h2> |
А в блоке контента:
<strong>Мой веб сайт:</strong> <a href="<?php $curauth->user_url; ?>"><?php echo $curauth->user_url; ?></a> <br /> <strong>Напишите мне:</strong> <a href="mailto:<?php echo antispambot($curauth->user_email); ?>"> Контакт с автором </a><br /> <strong>Немного обо мне:</strong> <?php echo $curauth->description; ?> |
И последнее – не забываем заменить внизу страницы код
<?php endwhile; endif; ?> кодом <?php endif; ?> |
Осталось поставить ссылку на авторскую страницу в файле single.php:
<?php the_author_posts_link(); ?> |
Вот и все!
Спасибо. Только у вас нашел,как сделать эту самую страницу автора. У себя на сайте сделал (правда еще не перенс на хостинг, через 3-4 дня сделаю)
Спасибо за подробное описание. А зачем вы параметр namefl передаете? Что он означает?
И второй вопрос, а разве the_author_posts_link выводит ссылку на авторскую страничку, а не на список всех его постов? Или это одно и тоже и зависит от кода в author.php?
Уже ничего. На данный момент это устаревший параметр.
Функция the_author_posts_link выводит ссылку на страницу всех записей текущего автора (вида "/author/name/").
Анкором является имя автора, отображенное так, как указано в его профиле.
Спасибо за ответ.
А я ведь могу настроить author.php так, чтобы там была только информация об авторе и все, без списка его постов, верно?
Можете, почему нет.
Как создать страницу “Отзывы” на своем блоге? Хотя это отдельный пост. Не получается нагуглить. У меня есть плагин Contact, который можно настроить на получение сообщений на email.Стандартные коментариии можно изменить на "Отзывы"? Благодарю, у вас очень полезый блог.
Спасибо за информацию. Попробовал у себя на сайте и столкнулся с такой проблемой:
1. Вы водятся не все посты автора, а только то количество, которое указано в настройках шаблона ( в моем шаблоне это количество архивных постов на страницу).
2. так как количество статей не полное, а только последние записи, то как сделать листание на следующую партию записей.
За оригинал взял ваш файлик и приделал туда миниатюры постов.
Вот что получилось: http://stroyrmt.ru/author/prorab
Поставьте какой нибудь плагин для навигации.
плагин - это не вариант. плагин поставит навигацию на весь сайт. а мне нужно только на одну страницу и где гарантия что навигация даст желаемый эффект...
Попробуйте этот вариант.