Пользовательский просмотр списка сообщений: Страница или что-то еще?

У меня есть вопрос о рабочем процессе / передовой практике о создании представлений для пользовательских типов сообщений (как список, так и подробная информация).

В настоящее время я помещаю «список» для своего пользовательского типа сообщения (называемого «Элементы меню») на страницу WordPress под названием «Меню». Затем я использую настраиваемый шаблон для своего меню «Страница»:

<?php $type = 'menu_item'; // name of my custom post $args=array( 'post_type' => $type, 'post_status' => 'publish', 'paged' => $paged, 'posts_per_page' => 5, 'ignore_sticky_posts'=> 1 ); $temp = $wp_query; // assign orginal query to temp variable for later use $wp_query = null; $wp_query = new WP_Query($args); if( have_posts() ) : while ($wp_query->have_posts()) : $wp_query->the_post(); ?> // my custom menu item post meta stuff <?php endwhile; ?> <?php endif; ?> 

Я разместил свой «подробный» вид на странице PHP под названием «single-menu_item.php».

На лицевой стороне это хорошо работает. Тем не менее, мне просто интересно, есть ли другой способ сделать это, потому что я вижу несколько неинтуитивных вещей об этом:

  1. Мой пользователь переходит к пункту меню верхнего уровня под названием «Элементы меню», но затем содержимое отображается на странице WordPress (которую они в основном не касаются). Я просто «спрячу» эту страницу от пользователя, используя разрешения, и если да, может кто-то указать мне в правильном направлении, как это сделать?

  2. Иногда на сайте мне просто нужно показать представление списка для настраиваемого сообщения, но не «подробное» представление … поэтому я не создал отдельную страницу просмотра для этой конкретной персонализированной публикации (скажем, я создаю другой пользовательский тип сообщения, называемый нечто иное, чем «пункт меню»). Итак … когда пользователь нажимает «view», потому что у меня нет подходящего единственного представления для этого сообщения, они попадают в представление по умолчанию, которое может быть неправильно отформатировано вообще?

Мне интересно узнать, как другие люди занимаются этими проблемами (или, если они вообще с ним общаются) …

Solutions Collecting From Web of "Пользовательский просмотр списка сообщений: Страница или что-то еще?"

Для основного вида элементов в настраиваемом типе сообщений вам не нужно использовать шаблон страницы вообще.

Создайте файл archive-post_type_name.php содержащий цикл для этого типа сообщения. Когда вы регистрируете тип post, установите значение has_archive в URL-адрес, который вы хотите, чтобы сообщения отображались, например. 'menu', затем перейдите на http://yoursite.com/menu/, чтобы просмотреть архив типа сообщения.

Если вы не хотите, чтобы люди, отправляющиеся на страницу типа сообщения, сами по себе, самым простым способом является просто оставить постоянные ссылки в вашем шаблоне.