Задача стоит такая. Создан новый тип записи:
add_action( 'init', 'register_products');
function register_products() {
$labels = array(
'name' => 'Товары',
'singular_name' => 'Товар',
'add_new' => 'Добавить товар',
'add_new_item' => 'Добавить новый товар',
'edit_item' => 'Редактировать товар',
'new_item' => 'Новый товар',
'all_items' => 'Все товары',
'view_item' => 'Просмотр товаров на сайте',
'search_items' => 'Искать товары',
'not_found' => 'Товаров не найдено.',
'menu_name' => 'Товары'
);
$args = array(
'labels' => $labels,
'public' => true,
'menu_icon' => 'dashicons-cart',
'menu_position' => 5,
'has_archive' => false,
'supports' => array( 'title', 'editor', 'thumbnail'),
);
register_post_type( 'products', $args );
}
Мне нужно выводить эти записи на отдельной странице. Для этого как я понимаю нужно создать отдельный шаблон страницы типа page.php и использовать его для нужной страницы? я создала такой шаблон в нем прописан такой код:
<?php
$args=array(
'post_type' => 'products',
);
$products = get_posts($args);
foreach ($products as $post) :
setup_postdata($post);
?>
<a href="<?php the_permalink(); ?>"><?php the_post_thumbnail();?></a>
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
<?php endforeach; ?>
Но на странице не отображается созданная запись. Что я не так делаю-то?
Плюс для отображения отдельной такой записи нужен шаблон single-product типа single? Как тогда указать чтобы использовался именно этот шаблон для вывода пользовательской записи?