Как создать шаблон страницы для отображения произвольного типа записей?
Я хочу создать файл шаблона страницы для отображения записей произвольного типа контента. Я работал с этим кодом, который нашел на этом сайте, но он ничего не выводит. Кто-нибудь знает, в чем проблема?
<?php /* Название шаблона: Архив произвольного типа записей */
get_header(); ?>
<?php
global $query_string;
query_posts($query_string . "post_type=YOUR-CUSTOM-POST-TYPE&post_status=publish&posts_per_page=10");
if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<h2><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a></h2>
<?php the_excerpt(); ?>
<?php endwhile;
endif; ?>
<div class="navigation">
<div class="alignleft"><?php next_posts_link('Предыдущие записи') ?></div>
<div class="alignright"><?php previous_posts_link('Следующие записи') ?></div>
</div>
<?php wp_reset_query(); ?>
<?php get_sidebar(); ?>
<?php get_footer();?>

Вам не нужно использовать запрос, просто создайте свой шаблон и назовите его single-ВАШ_ПОЛЬЗОВАТЕЛЬСКИЙ_ТИП_ЗАПИСИ.php. Для получения дополнительной информации ознакомьтесь с:

Я не совсем понимаю. Не могли бы вы подробнее объяснить ваш ответ?

Стандартный шаблон страницы для произвольного типа записи - это single-NAME.php. Например, если ваш тип записи называется "Sports", вам нужно создать этот шаблон и сохранить его как single-sports.php. У вас уже есть созданная тема, вам просто нужно удалить этот запрос в строке 5 и оставить цикл как есть. Также обратите внимание, что ссылки "next" и "prev" не будут работать, так как эти функции не работают с CPT (произвольными типами записей), однако для этого существуют плагины - google вам в помощь.

Если вы создали новый тип записи (Custom Post Type), то для его отображения на сайте вам нужно использовать следующие файлы в папке вашей темы:
- archive-{CPT}.php
- single-{CPT}.php (Необязательно, если вы хотите отображать одиночную запись по-другому)
Замените {CPT} на название вашего типа записи. Затем в этих файлах просто используйте стандартный цикл, как в файле index.php.
Например:
<?php get_header(); ?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<?php /* Содержимое ваших записей */ ?>
<?php endwhile; else: ?>
<div class="post">
<p><?php _e('Извините, нет записей, соответствующих вашему критерию.', "hi-rezz"); ?></p>
</div>
<?php endif; ?>
<?php get_footer(); ?>

Спасибо за подробное объяснение. Пожалуйста, проявите терпение, так как я относительно новичок в подобных модификациях WordPress. Мой CPT называется "New Movies". Слаг для него "new_movies". Архивный файл - "archive-new_movies.php". Значит, мне нужно поместить код цикла в архивный файл?
