如何将自定义single.php应用于特定帖子?

时间:2018-12-03 11:39:09

标签: php wordpress

我想为特定帖子使用不同的single.php。我想将自定义single.php应用于具有所需号码的帖子。我该怎么办?

WordPress管理员在帖子中显示280号,我想使用自定义single.php

wiseoid.com/wp-admin/post.php?post=280&action=edit

请让我知道最简单的解决方案,我是否必须在functions.php中编写另一个代码?我要使用自定义single.php的原因是因为Google Adsense不允许使用色情等词语,即使该文章具有教育目的。我需要用其他广告替换2个adsense单元,以用于特定帖子。

1 个答案:

答案 0 :(得分:1)

使用 template_include 过滤器可以轻松完成此操作,请找到以下代码。它将从主题文件夹->单个帖子布局添加自定义模板。实际上,我已经完成了一个自定义插件的创建,该插件名为 Ze Single Post Layout。

add_filter('template_include', 'ze_single_post_templates');
function  ze_single_post_templates( $template ) {
    $post_types = array('post');
    $post_id=get_the_ID();

    if (is_singular($post_types)) {        
        if($post_id==280)
        {
            $template = get_template_directory().'single-post-layouts/custom-layout1.php';          
        }  
    }
    return $template;
}