主页只有页脚

时间:2010-11-11 04:13:02

标签: wordpress footer

我有一个博客http://sweatingthebigstuff.com,我想在页脚中添加一个额外的行,该行只显示在主页上。我找到了这段代码,但它对我不起作用。我是否有错误的语法或者还有什么我可以尝试使其工作?

<?php if ( is_home() ) { ?>
text
<?php } ?>

这是footer.php的名称

<?php include (TEMPLATEPATH . '/sidebar1.php'); ?>

<div class="cleared"></div>

<?php get_footer(); ?>

以下是页脚代码:

文字2  


联系|免责声明|隐私声明
版权所有©2009-2010 Sweating The Big Stuff。版权所有。

然后是一些sitemeter废话。

4 个答案:

答案 0 :(得分:2)

is_home()设置一个似乎不会重置或重新评估的全局变量,wp有点奇怪。

尝试将wp_reset_query()放在if语句代码的 end 开头
实际上,最好先调用它,因为我们可以确保重置查询

<?php wp_reset_query();
if ( is_home() ) { ?>
text
<?php }  ?>

既然php正在运行,理想情况下你需要上面的代码。
         文本     

我刚刚做了一个视图源,我可以清楚地看到php代码,因为它本来是解析服务器端所以不应该是可见的。视图源中不应该出现以下内容....正在编辑错误文件?

<p>
<?php if ( is_home() ) { ?> 
text 
<?php } ?>
<wp_reset_query()>
<br />
<br />

footer.php文件应位于wp-content / themes / nameofyourtheme文件夹中

答案 1 :(得分:1)

is_home()是一个应该返回true或false的方法。您需要在某处实现此方法。如果blogspot没有为您实现此方法,则需要自己完成。对于您的网站,我认为此功能可以满足您的需求:

<?php
function is_home(){
    $r = $_SERVER['REQUEST_URI'];
    return $r == '/' || $r == '' || $r == '/index.php';
}

if(is_home()) {
?>
text
<?php } ?>

在你想要页脚的位置,放:

<?php include 'footer.php'; ?>

而不是行:

<?php get_footer(); ?>

我相信你的问题是get_footer()正在以文本形式读取页脚,因此它不会事先执行PHP。如果你这样做,你可以在标题中添加尽可能多的PHP。

答案 2 :(得分:0)

您的语法没有问题,当我查看您的页面来源时,我会看到“文字”

页脚页面的文件扩展名是什么?如果它是“footer.php”那么我不应该看到php()的开始和结束条款。除非文件扩展名为“.php”

,否则php不会运行

关于之前的回答:

在这种情况下,

<?php wp_reset_query();?>应该在<?php if(is_home()){?>text<?php } ?>之前。 is_home()依赖于页面上存在的循环。也许在某个地方你使用了自定义查询,或者你的一个插件使用了一个扰乱默认查询变量的自定义查询。就像我说的那样,在if语句之前使用reset语句。

答案 3 :(得分:0)

您需要修改代码以包含对is_front_page()的检查,如下所示:

<?php
    $ishomepage = ( is_home() || is_front_page() );
    switch( $ishomepage )
    {
        case true :
            echo 'Your homepage-only snippet of text goes here';
            break;

        case false :
        default :
            // Do nothing... or do something else...
            break;
    }

?>

参考:WordPress Codex: is_front_page()

默认WP安装没有定义主页,它使用你的index.php并检查其他模板,如home.php模板作为起点(home.php,只有当你的主题有它时。 )以下是其在线文档中的图表,其中显示了其层次结构的工作原理:WordPress Template Hierarchy

  

默认情况下,WordPress会在首页显示您最近的帖子   你的网站。但许多WordPress用户希望拥有静态前端   页面或启动页面作为首页。这个“静态前线   页面“对于那些希望没有”博客“的人来说,看起来很常见   他们的网站,给它一个更多的CMS(内容管理系统)的感觉。

如果您想知道如何设置静态主页,请阅读本文并按照说明操作:Creating a Static Frontpage。设置静态首页后,is_home()将按预期工作。