Я пишу пользовательский плагин типа поста. Часть этого я вывожу на шаблон через шорткоды. Но другим частям нужен собственный шаблон публикации, и я выяснил, как использовать иерархию шаблонов для CPT. Но пользовательский шаблон находится в теме, и я думаю, что плагин должен быть автономным, по крайней мере, для начала.
Так какова лучшая практика здесь? Как мы включаем файлы шаблонов в плагин CPT? Можете ли вы указать мне особенно хорошие примеры того, как это делается?
Спасибо за вашу помощь.
custom-post-types
plugin-development
template-hierarchy
NotoriousWebmaster
источник
источник
Ответы:
Я бы сказал, комбинация, позволяющая теме обрабатывать это и предоставление по умолчанию с вашим плагином.
Вы можете использовать
single_template
фильтр, чтобы отключить шаблон. В вашем обратном вызове посмотрите, предоставила ли тема шаблон для типа поста, если он сделал, ничего не делайте.Мне нравится этот метод лучше всего. Объедините это с предоставлением звукового набора «шаблонных тегов» (например
the_content
,the_title
), которые поддерживают любые пользовательские данные, которые соответствуют вашему типу поста, и вы даете конечному пользователю много возможностей настройки наряду с некоторыми звуковыми настройками по умолчанию. Bbpress действительно хорошо справляется с такой задачей: включает пользовательские шаблоны, если он их находит, и предоставляет множество тегов шаблонов.Кроме того, вы можете использовать обратный вызов с
the_content
фильтром, и просто изменить материал в самом контенте.источник
Вы можете подключить
template_include
и вернуть файл плагина, если запрос относится к типу вашего сообщения:Но это резко изменит внешний вид. Там до сих пор нет чистого решения.
источник