2010-08-01 55 views
2

我试图在wordpress上构建的每个页面上都有不同的图片。如果is_page()使用Wordpress条件语句

所以我在我的index.php文件,archive.php文件,page.php文件文件等以下:现在

<img src="<?php bloginfo('template_url'); ?>/images/<?php echo $toppic; ?>" alt="page1" id="mainPageImg" /> 

,在我的page.php文件的文件,我有以下几点:

<?php 
    // TOP PICTURE DEFINITIONS 
    if (is_home()) { 
     $toppic == 'page1.png'; 
    } 
    if (is_page('articles')) { 
     $toppic == 'page2.png'; 
    } 
?> 

这是怎么回事?我有一个等号(=)符号...

编辑试了一下:如果我在上面定义$ toppic,例如,在index.php文件如下:

<?php $toppic = 'page1.png'; ?> 

然后,它的工作原理。因此,如果is_page/is_home语句必须与条件有关。有任何想法吗?

谢谢! 阿米特

回答

3

好的,我找到了答案。

这是需要做的。对于文章(博客)页面,顶部部分,你需要将以下内容:

<?php // TOP PICTURE DEFINITION FOR ARTICLES PAGE 
     if (is_home()) { 
      $toppic = 'page1.png'; 
     } 
?> 

然后,在你的page.php文件的文件,你可以在上面的所有其他网页控制图片(除404 ,在那里你需要把is_404()在你的404.php因此,这是什么样子:

<?php 
    // TOP PICTURE DEFINITIONS 
    if (is_page('english')) { 
     $toppic = 'page1.png'; 
    } 
    if (is_page('aboutus')) { 
     $toppic = 'page1.png'; 
    } 
    if (is_page('newspaper')) { 
     $toppic = 'page1.png'; 
    } 
    else { 
     $toppic = 'page1.png'; 
    } 
?> 

最后,为了实现这一点,使用下面的HTML/PHP语法:

<img src="<?php bloginfo('template_url'); ?>/images/<?php echo $toppic ?>" alt="page1" id="mainPageImg" /> 

就是这样。唷。最后让它工作:)也必须为客户做到这一点!

+0

我没有得到什么解决方案,是您的“文章”页面还您的主页? – 2010-08-01 08:07:44

+0

文章页面不是我的主页。我已经设置了一个'静态'首页。但是,Wordpress函数is_home()为博客页面(也就是我的文章页面)返回“true”。这就是为什么你必须在index.php文件中放置is_home(),在404.php文件中放置is_404(),在page.php文件放置is_page()。希望有帮助 – Amit 2010-08-02 05:18:24

+0

好吧,我认为'文章'是你的静态页面之一,而不是你的博客页面。是的'is_home()'是你的主要博客页面,'is_front_page()'是你的首页。 – 2010-08-02 07:17:06

1

您的文章页的slu has必须被定义为articles。这在编辑页面界面中设置,请参阅these directions

+0

是的。我会研究 – Amit 2010-08-01 07:02:01

+0

不应该is_home()工作以及? – Amit 2010-08-01 07:02:31

+0

我刚刚检查过,slu is被设置为文章...我应该提到这是父页的子页面。应该这样吗? – Amit 2010-08-01 07:03:14