Intereting Posts
Проверьте, правильно ли работает wp_mail? Создайте новое настраиваемое поле для всех сообщений на основе текущего настраиваемого поля Создать категорию продукта и форму поиска по ключевым словам в woocommerce? Если мета-ключ существует в функции получения сообщений, иначе создайте его Оберните ежемесячные посты в div Как вставить короткий код в тег заголовка другого? создать статическую папку, независимую от WordPress Остановить 'alt' от добавления в the_post_thumbnail Фотогалерея на странице профиля? Как редактировать содержимое dynamic_sidebar ()? Проверка роли пользователя в пользовательском плагине получать сообщения, основанные на метаоценке автора Как включить WPML в многоязычный плагин BuddyPress на одном веб-сайте? Есть ли риск для безопасности, предоставляющий кому-то временный доступ к коду моего блога? Изменение языка для каждого отдельного сайта в wordpress multisite

Страница как страница архива

У меня проблемы с пониманием логики, я попытаюсь объяснить.

Предположим, у меня есть раздел видео. Вот как я (хочу) это сделать.

  • Я создаю персонализированный тип сообщения под названием «Видео»;
  • Я создаю шаблон для показа видеоматериалов, назовите его tpl-videos.php;
  • Я делаю обычную страницу под названием «Видео» и выбираю tpl-videos.php в качестве шаблона моей страницы;

Конечно, это работает, ЕСЛИ вы используете какую-то разбивку на страницы, скажем, ПагНави. Всякий раз, когда я перехожу на страницу 2, я получаю сообщение об ошибке 404. Причина: мой CPT имеет то же имя, что и моя страница.

Поэтому я должен изменить один из них, которого я не хочу, потому что это странно. Если я это сделаю, это скорее всего будет «Видеообъекты» как CPT, а «Видео» – как страница. Но это не то, что я хочу для своих URL: это сделает сайт.com/videos/video-items/my-video-item, но я хочу site.com/videos/my-video-item.

Правильный способ – сделать archive-videos.php. Но, с архивной страницей, я не могу воспользоваться материалами этой категории, такими как Metaboxes, Thumbnails и т. Д. И т. Д.

Есть ли способ заставить страницы архивов вести себя как страницы, не делая настраиваемых параметров для каждой страницы архива?

Изменить: было недоразумение относительно использования блога в качестве CPT. Блог может быть любым: видео, галереи, что угодно. Вопрос обновлен.

Solutions Collecting From Web of "Страница как страница архива"

Иерархия шаблонов WordPress для пользовательских страниц индекса архива пост-типа предоставляет решение.

Просто создайте файл шаблона с именем archive-{post-type}.php – который в вашем случае будет archive-blog.php . WordPress автоматически создаст индекс архива (при условии, что вы установите 'has_archive' => true в вашем вызове register_post_type() ), автоматически будет использовать archive-blog.php , а разбиение на страницы будет работать из коробки.

Правильный способ – сделать archive-blog.php. Но с этими страницами я не могу воспользоваться материалами нормальных страниц, такими как Metaboxes, Thumbnails и т. Д. И т. Д.

Почему нет? Для избранных изображений просто включите поддержку пост-эскизов для вашего CPT в вашем вызове register_post_type() . Для обмена веществ: какие метаболические средства вы хотите использовать для вашего CPT? Для метаданных настраиваемого сообщения это так же просто, как добавление add_meta_box() и изменение $posttype в blog .

Поэтому я должен изменить один из них, которого я не хочу, потому что это странно. Если я это сделаю, это скорее всего будет «Blog-items» как CPT, а «Blog» – как страница. Но это не то, что я хочу для своих URL.

И если все, что вы пытаетесь сделать, это использовать конечную точку /blog для вашего индекса сообщений в блогах, просто используйте статическую переднюю страницу, создайте статическую страницу с именем «Блог», а затем назначьте ее как страницу для сообщений через Settings -> Reading . Не требуется настраиваемый тип сообщения.