我想知道这样做是有可能的
single-post-45.php
我只需要使用post(45)就可以有一个自定义模板。
我知道我们可以用页面来实现这一点
page-45.php
或者由模板文件模板-test.php
但我找不到用简单的帖子就能做到这一点(我认为这是不可能的)
https://www.lafabriquedunet.fr/wp-content/uploads/2018/02/templates-wordpress-hierarchie.jpg
发布于 2021-02-09 12:11:31
您必须遵循以下文件名结构:
single-{post-type}-{slug}.php
如果您有一个帖子名为"Hello“,并且文章的片段是hello-world
,那么模板名将是single-post-hello-world.php
更新:
在模板名中没有使用id的默认方法。但你可以试试这个片段:
post_type) {
$tmp_template = dirname( __FILE__ ) . '/single-post-'.$post->ID.'.php';
if ( file_exists( $tmp_template ) ) {
$single_template = $tmp_template;
}
}
return $single_template;
}
这里,我正在以一种棘手的方式重写post模板。现在,如果您有一个id 42
的post,并且有一个名为single-post-42.php
的模板文件,那么它应该会自动加载。
我没有测试密码。所以把它和你自己的风险一起使用。
https://wordpress.stackexchange.com/questions/383075
复制相似问题