Управляйте пользовательским шаблоном типа записи с помощью плагина
Я могу управлять пользовательским шаблоном, который будет использоваться на страницах пользовательского типа сообщений, но файл шаблона все равно должен иметь разметку темы. Мне было интересно, смогу ли я сделать его независимым от темы?
Пример: У меня есть плагин, который регистрирует мой пользовательский тип записи. У меня есть мета-информация о публикации, которую я хочу показать в пользовательском шаблоне. У меня есть этот шаблон, работающий на моих пользовательских страницах типа сообщений, но максимум, что я мог бы сделать, это использовать вызовы get_header() и get_footer(), но я не могу решить проблему необходимости разметки темы между верхним и нижним колонтитулами.
Имело ли это какой-нибудь смысл? Есть какие-нибудь идеи?
1 answers
Я заставил его работать с помощью следующего кода:
add_action( 'template_redirect', 'ft_job_cpt_template' );
function ft_job_cpt_template() {
global $wp, $wp_query;
if ( isset( $wp->query_vars['post_type'] ) && $wp->query_vars['post_type'] == 'job' ) {
if ( have_posts() ) {
add_filter( 'the_content', 'ft_job_cpt_template_filter' );
}
else {
$wp_query->is_404 = true;
}
}
}
function ft_job_cpt_template_filter( $content ) {
global $wp_query;
$jobID = $wp_query->post->ID;
$output = ''; // Build markup fetching info from postmeta
return $output;
}
Не стесняйтесь комментировать любые предложения.