Чтобы создать страницу для всех записей из Custom Post Type в PHP, вам понадобится использовать два основных шага: регистрацию типа записи и создание шаблона страницы.
Шаг 1: Регистрация типа записи
1. Откройте файл functions.php вашей темы WP или создайте новый файл и подключите его в функции вашей темы.
2. Используйте функцию register_post_type()
для создания нового типа записи и указания необходимых параметров. Например, если вы хотите создать тип записи "Продукты", ваш код может выглядеть так:
function custom_post_type() { $args = array( 'public' => true, 'label' => 'Продукты', 'supports' => array('title', 'editor', 'thumbnail'), ); register_post_type('products', $args); } add_action('init', 'custom_post_type');
3. Сохраните файл и обновите ваш сайт WP. Теперь у вас есть новый тип записи.
Шаг 2: Создание шаблона страницы
1. Создайте новый файл в папке вашей темы с расширением .php. Назовите его, например, archive-products.php
.
2. В начале файла добавьте комментарий, чтобы указать WordPress, что это шаблон страницы для типа записи "Продукты". Например:
<?php /* Template Name: Архив Продуктов */
3. Далее добавьте следующий код для отображения всех записей из типа записи "Продукты":
<?php $args = array( 'post_type' => 'products', 'posts_per_page' => -1, // Вывести все записи в архиве ); $query = new WP_Query($args); if ($query->have_posts()) { while ($query->have_posts()) { $query->the_post(); ?> <h2><?php the_title(); ?></h2> <div class="entry-content"> <?php the_content(); ?> </div> <?php } } ?>
4. Сохраните файл и обновите ваш сайт. Теперь, если вы создадите новую страницу и выберете шаблон "Архив Продуктов", на этой странице будут отображаться все записи из вашего типа записи "Продукты".
Надеюсь, это помогло вам разобраться с созданием страницы для всех записей из Custom Post Type! Если у вас возникнут дополнительные вопросы, не стесняйтесь задавать.