Вопрос или проблема
Я пробовал код, опубликованный здесь >>Custom Post Type: Get most recent permalink
Но дело в том, что он показывает только одну запись из последних и без get_the_title,,, может кто-то помочь мне получить до 10 заголовков и постоянных ссылок для пользовательского типа записи.
Я гуглю уже около 1 часа.. Пожалуйста, помогите кто-нибудь
<h2>Недавние записи</h2>
<ul>
<?php
$recent_posts = wp_get_recent_posts(array('post_type'=>'book'));
foreach( $recent_posts as $recent ){
echo '<li><a href="' . get_permalink($recent["ID"]) . '" title="Look '.esc_attr($recent["post_title"]).'" >' . $recent["post_title"].'</a> </li> ';
}
?>
</ul>
Единственное, что я сделал, это добавил аргумент для поиска типа записи book
вместо стандартного типа post
.
И это, вероятно, дубликат этого вопроса, но система не позволяет мне отметить его как таковой.
Предполагая, что вы знаете, как использовать WP_Query, вы можете использовать следующий код, чтобы получить последние 10 записей для любого пользовательского типа записи.
$args = array(
'post_type' => 'your-custom-post-type',
'orderby' => 'date',
'order' => 'DESC',
'posts_per_page' => 10
);
$query = new WP_Query( $args );
Вы можете использовать этот код, чтобы получить последние записи
$recent_posts = get_posts( array( 'posts_per_page' => 1, 'orderby' => 'post_date', 'order'=> 'DESC', 'post_type' => array('camp','cruise','competition','combine')));
Также можно добавить этот код. Необходимо добавить ‘post_status’ => ‘publish’ в код массива.
<?php
$recent_posts = wp_get_recent_posts(array('numberposts' => 100, 'post_status' => 'publish', 'post_type'=>'book'));
foreach( $recent_posts as $recent ){
echo '<a href="' . get_permalink($recent["ID"]) . '" title="Look '.esc_attr($recent["post_title"]).'" >' . $recent["post_title"].'</a> ';
}?>
Ответ или решение
Конечно. Если вы являетесь разработчиком WordPress и стремитесь отобразить до 10 последних записей, добавленных в пользовательские типы записей, необходимо воспользоваться несколькими методами, представленными в сообществе. Вот как можно это сделать, используя различные подходы и методы, наиболее подходящие для вашей ситуации:
Использование функции WP_Query
Для гибкого и мощного метода получения последних записей, рекомендую использовать функцию WP_Query
. Она позволяет точно указать, какие записи вас интересуют:
$args = array(
'post_type' => 'ваш_пользовательский_тип_записей', // Укажите ваш тип записей
'orderby' => 'date', // Упорядочивание по дате
'order' => 'DESC', // В порядке убывания
'posts_per_page' => 10, // Количество записей
'post_status' => 'publish', // Только опубликованные
);
$query = new WP_Query( $args );
if ( $query->have_posts() ) {
echo '<ul>';
while ( $query->have_posts() ) {
$query->the_post();
echo '<li><a href="' . get_permalink() . '">' . get_the_title() . '</a></li>';
}
echo '</ul>';
wp_reset_postdata(); // Сброс основного запроса
}
Использование функции wp_get_recent_posts
Если ваш сценарий просто требует вывести несколько последних записей одного типа, функция wp_get_recent_posts
может быть полезна:
$recent_posts = wp_get_recent_posts(array(
'numberposts' => 10,
'post_status' => 'publish',
'post_type' => 'ваш_пользовательский_тип_записей'
));
echo '<ul>';
foreach( $recent_posts as $post ){
echo '<li><a href="' . get_permalink($post["ID"]) . '">' . esc_attr($post["post_title"]) . '</a></li>';
}
echo '</ul>';
Использование функции get_posts
Эта функция представляет собой упрощенную версию WP_Query
и может быть использована для быстрого получения списка записей:
$recent_posts = get_posts(array(
'posts_per_page' => 10,
'orderby' => 'post_date',
'order' => 'DESC',
'post_type' => 'ваш_пользовательский_тип_записей',
'post_status' => 'publish'
));
echo '<ul>';
foreach ( $recent_posts as $post ) {
setup_postdata( $post );
echo '<li><a href="' . get_permalink($post->ID) . '">' . get_the_title($post->ID) . '</a></li>';
}
wp_reset_postdata();
echo '</ul>';
SEO и Контекст
При создании отзывчивого к SEO контента, определитесь, какие ключевые слова являются важными для вашего сайта. В данном коде, более детальная информация, например, добавление описания или мета-тегов, может быть полезной. Кроме того, убедитесь, что ссылка на записи правильно индексируются через мета-теги и семантические заголовки, улучшая UX и SEO.
Этот подход детализирован и дает вам разнообразие в способах получения последних записей из пользовательских типов записей, обеспечивая как гибкость, так и производительность. Обязательно выбирайте подход, который наиболее полно отвечает вашим бизнес-требованиям и предпочтениям в разработке.