2010-08-01 84 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