is_page($ id)不适用于子主题

时间:2016-03-15 11:05:04

标签: php wordpress parent-child

我想将插件的使用限制为子主题(称为" intranet")。 该文件位于mytheme/intranet/index.php,并由名为" Intranet"的页面用作模板。在WP管理员中创建。 网址为www.mysite.com/intranet

我已尝试过针对post-id(" 100")和page-slug(" intranet"),如下所示:

if (is_page( 100 )) {               
    //run pluggin
    }

if (is_page( 'intranet' )) {                
//run pluggin
}

但是,当使用子主题(id和slug)中的模板mytheme/intranet/custom-page-template.php定位页面时,这会有效。

我也尝试过针对uri:

$uri = $_SERVER['REQUEST_URI'];
    if ( strpos($uri, 'child-theme/index.php') ) {
     //run pluggin
}

为什么它不起作用?

1 个答案:

答案 0 :(得分:1)

尝试在主页模板上循环后放置一个wp_reset_query函数调用。

如果您在主页上使用自定义查询而未使用wp_reset_query,则条件检查将始终指向该自定义查询提取的最后一篇帖子,因此无法检查是否有主页。

OR

试试这个

<?php if (get_the_ID()==100): ?>
  <!-- Google Analytics Content Experiment code -->
<?php endif; ?>