有关WordPress使用的模板,请始终参考Template hierarchy scheme 在法典中。
如你所见,single-{$posttype}-{$slug}.php
不存在,只有single-{$posttype}.php
.
要执行所需操作,请查看过滤器\'single_template\'
:
add_filter( \'single_template\', function( $template ) {
global $post;
if ( $post->post_type === \'event\' ) {
$locate_template = locate_template( "single-event-{$post->post_name}.php" );
if ( ! empty( $locate_template ) ) {
$template = $locate_template;
}
}
return $template;
} );
在您的
functions.php
, 您可以创建文件
single-event-{$slug}.php
它将由WordPress加载。