Как вывести записи произвольного типа на WordPress сайте

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

Записи произвольного типа на отдельной странице

Чтобы показать список записей произвольного типа на отдельной странице, сначала нужно создать новый шаблон, в котором будут запрашиваться записи определенного типа, в данном случае - записи Аксессуары "acsessuar".

Шаблон архива для произвольного типа записей

Сначала создайте новый файл acsessuar.php и наполните его следующим содержимым

<?php /* Template Name: Аксессуары для мобильных устройств */ ?>
<?php get_header(); ?>
<div id="container" class="right_container">
 <div id="content" class="content" role="main">
 <h1 class="page-title">Аксессуары для мобильных устройств</h1>

 <!-- Начинается петля -->

 <?php $acsessuar = new WP_Query( array( 'post_type' => 'acsessuar', 'posts_per_page' => 24 ) ); ?>

 <?php while ( $acsessuar->have_posts() ) : $acsessuar->the_post(); ?>

 <div id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
<?php if ( (function_exists('has_post_thumbnail')) && (has_post_thumbnail()) ) : ?>
 <a class="post_thumbnail" href="<?php the_permalink(); ?>" title="<?php the_title(); ?>" alt=""><?php the_post_thumbnail(array( 234,124)); ?></a>
<?php endif; ?>
<a href="<?php the_permalink() ?>"><?php the_title(); ?></a>
</div><!-- post -->
<?php endwhile; ?>
<?php wp_reset_postdata(); ?> 

 <!-- Заканчивается петля -->
</div><!-- #content -->
 </div><!-- #container -->
<?php get_sidebar(); ?>
<?php get_footer(); ?>

 Страница для записей произвольного типа

Теперь необходимо создать новую страницу и применить для нее ранее созданный шаблон.

Страница для записей произвольного типа Шаблон архива для произвольного типа записей

Выводим записи произвольного типа в любом месте блога

Также, показать любые записи можно в произвольном месте на сайте с помощью функции <?php get_posts(); ?>. Для этого вы можете использовать следующий код:

<?php
$args=array(
'post_type' => 'acsessuar',
'showposts'=>15
);

$acsessuar = get_posts($args);
foreach ($acsessuar as $post) :
setup_postdata($post);
?>
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
<?php endforeach; ?>

Шаблон одиночной записи произвольного типа

Также вам несомненно понадобится создать шаблон одиночной записи произвольного типа. Для этого просто создайте копию файла single.php и переименуйте в single-acsessuar.php. Затем вы можете отредактировать этот шаблон по собственному желанию.