Стилизация файла шаблона single-post-type.php в Гутенберге?

Ссылка скопирована
PHP
1 ответ

Хочу добиться изменения шаблона записи через Гутенберг посредством Template

Что-то не получается. По разному добавляю, меняю местами но шаблона на странице в админке всё нет...

Файл: single-city.php
/*Template Name: WPSE Template Test
Template Post Type: city*/

Дополнительно:

Ответы:

Если нужно выбирать шаблон в редакторе контента, то файл не должен начинаться с "single-".

А в заголовке шаблона должен быть заголовок с перечислением типов контента:

Template Post Type: post, page, city

Для родных записей это post

Если же нужно автоматическое применении шаблона для кастомного типа (city), тогда файл должен называться single-city.php , а в заголовке ненужно указывать типы.

  • Спасибо за ответ! Мне подсказали, что одно дело отредактировать файл одной записи в Гутенберге, а другой сам ЦИКЛ записей! Так вот, цикл отредактировать невозможно
  • Alex_87, всё можно. Нужно только правильно сформулировать новый вопрос. А этот, если помог, отметить решением.
Нужно решить такую задачу?

Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

Заказать помощь
Лучший ответ
1
Mobile-редакция Ответ

Если шаблон single-city.php не появляется в редакторе Gutenberg, сначала нужно разделить две вещи: шаблон одиночной записи CPT и выбираемый шаблон из выпадающего списка “Template”.

Файл single-city.php сам по себе не обязан появляться в выпадающем списке. WordPress использует его автоматически для всех записей типа city по иерархии шаблонов. То есть если открыть запись CPT city на фронте, тема должна взять single-city.php.

Если нужен именно выбираемый шаблон в админке, заголовок должен быть таким:

<?php
/*
Template Name: Шаблон города
Template Post Type: city
*/

<?php /* Template Name: Шаблон города Template Post Type: city */

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

Для классических тем такой PHP-шаблон нормален. Для block theme логика другая: шаблоны могут лежать в /templates как HTML-файлы, например single-city.html, и редактироваться через Site Editor. Тогда PHP template dropdown может вести себя иначе.

Проверьте регистрацию CPT:

register_post_type('city', [
    'public' => true,
    'show_in_rest' => true,
    'supports' => ['title', 'editor', 'thumbnail', 'page-attributes'],
]);

register_post_type('city', [ 'public' => true, 'show_in_rest' => true, 'supports' => ['title', 'editor', 'thumbnail', 'page-attributes'], ]);

show_in_rest нужен для нормальной работы Gutenberg. page-attributes иногда требуется для выбора шаблонов в интерфейсе.

Итог: если задача — оформить все записи city, используйте single-city.php, он не обязан отображаться в списке. Если задача — дать выбор шаблона в редакторе, используйте заголовок Template Name + Template Post Type, файл в активной теме и поддержку page-attributes.

Другие ответы (0)

Пока нет других ответов. Будьте первым, кто поможет автору.

Ответить на вопрос

комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Вам также может быть интересно