Как создать пользовательскую страницу для отображения записей определенного автора на WordPress?
Здравствуйте!
У меня возникла проблема при создании пользовательской страницы на WordPress. Я хочу отобразить на странице все записи определенного автора. Я искал решение в документации, но не смог найти подходящий метод или функцию.
$author_id = 123; // ID автора, записи которого хочу отобразить
$args = array(
'author' => $author_id,
'post_type' => 'post',
'posts_per_page' => -1
);
$query = new WP_Query($args);
if($query->have_posts()) {
while($query->have_posts()) {
$query->the_post();
// Вывод информации о посте
}
} else {
// Вывод сообщения, если нет постов данного автора
}
wp_reset_postdata();
Я использовал функцию WP_Query и указал параметры для фильтрации записей по автору. Однако, я не уверен, правильно ли я это сделал, и возможно ли доработать код для более гибкого отображения записей автора на странице.
Буду благодарен за помощь в правильном создании пользовательской страницы для отображения записей определенного автора на WordPress!
Ответы:
Да, твой код выглядит правильным, и ты используешь функцию WP_Query для получения записей определенного автора. Параметр 'author' в массиве $args указывает ID автора, записи которого ты хочешь отобразить.
Однако, если тебе нужно сделать страницу для отображения записей определенного автора на WordPress более гибкой, ты можешь добавить дополнительные параметры фильтрации или использовать дополнительные функции.
Например, ты можешь добавить параметр 'post_status' в массив $args, чтобы отобразить только определенный статус записей (например, только опубликованные записи):
$author_id = 123; // ID автора, записи которого хочу отобразить
$args = array(
'author' => $author_id,
'post_type' => 'post',
'post_status' => 'publish',
'posts_per_page' => -1
);
$query = new WP_Query($args);
Ты также можешь добавить параметр 'orderby' для сортировки записей по определенному полю, например, по дате:
$args = array(
'author' => $author_id,
'post_type' => 'post',
'post_status' => 'publish',
'posts_per_page' => -1,
'orderby' => 'date',
'order' => 'DESC'
);
$query = new WP_Query($args);
Если тебе нужно отобразить не только записи, но и другие типы контента (например, страницы или пользовательские типы записей), ты можешь изменить значение 'post_type' в массиве $args:
$args = array(
'author' => $author_id,
'post_type' => array('post', 'page', 'custom_post_type'),
'post_status' => 'publish',
'posts_per_page' => -1
);
$query = new WP_Query($args);
Надеюсь, эти примеры помогут тебе доработать код и сделать страницу для отображения записей определенного автора на WordPress более гибкой. Если у тебя возникнут еще вопросы, не стесняйся задавать! Удачи в твоем проекте!