【问题标题】:Cannot get is_front_page to work in Wordpress footer无法让 is_front_page 在 Wordpress 页脚中工作
【发布时间】:2016-02-08 22:42:48
【问题描述】:

我的footer.php 文件中有几行代码,我只想在站点的主页上激活它们。我尝试了各种使用我在网上找到的 is_front_page 的建议,但没有一个奏效。我显然不是php专家!

This is the site,我使用静态页面作为主页。下面是我只想在主页上激活的代码。感谢所有帮助!

<?php   
$display_brands_widget = false;
if (isset($qode_options_flat['footer_brands_area'])){
    if ($qode_options_flat['footer_brands_area'] == "yes")  $display_brands_widget = true;
}
if($display_brands_widget): ?> 
    <div class="carousel_slider_holder clearfix">
        <ul class="carousel_slider">
            <?php dynamic_sidebar( 'brands' ); ?>
        </ul>
    </div>
<?php endif; ?>

【问题讨论】:

    标签: php wordpress templates conditional


    【解决方案1】:

    感谢@chris-rogers 提供的一些出色的诊断帮助,我能够找出页脚内容中的 is_front_page “不起作用”,因为我使用的是通过 Ajax 加载页面。简单的解决方案最终是将相关代码的 sn-p 移动到新的页面模板,以便仅在调用该页面内容时才加载它。

    【讨论】:

      【解决方案2】:

      您是否尝试过使用is_home()

      【讨论】:

      • 我有,但没有运气。我什至无法让 is_front_page、is_home 或 is_page 打印出简单的 html 行。我不确定是不是我的主题有问题,还是我的代码有问题。
      • 尝试 echo get_the_ID(); 并告诉我这是否与您的页面 ID 匹配(您可以通过单击 Worpdress 管理员的页面并查看URL 中的 ID)。您可能在 the loop 之外引用此内容,这意味着您无法访问帖子信息。
      • 啊...我想您已经找到问题所在了!因此,get_the_ID() 向我确认了我用于主页的页面 ID 是正确的,但是当我加载任何其他页面时,它仍然说页面 ID 是主页。问题似乎是我使用 Ajax 加载页面,因为当我直接转到任何其他非主页时(而不是使用主页中的链接),页面 ID 是正确的。
      • 所以现在我使用 is_page() 让它工作,但是当我使用内部链接导航时,Ajax 阻止它工作。你知道解决这个问题的方法吗?我真的不希望为该站点失去 Ajax。非常感谢您的帮助!
      • 好的,所以您正在使用 AJAX 加载每个页面,而容器页面就是您的首页。我想我跟着你。好的,无论您使用什么号召性用语 (CTA) 来加载页面,您肯定有某种 ID 或 slug 吗?如果是这样,那么您可以执行something like this 来返回页面的ID 并将其分配给一个变量以便以这种方式使用?告诉我
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-07-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-21
      相关资源
      最近更新 更多