2014-07-03 141 views
0

條件語句我有2個模板文件,一個模板文件是前page.php文件和其他模板是一個自定義的。基本上下面的代碼是說明它是否是首頁,然後使用這個主體類,但如果它的其他東西,然後使用其他主體類。我想要做的是讓我的新模板使用與我的front-page.php相同的主體類。我正在發生一些問題。所以基本上,它需要「如果頭版或定製的template.php然後用身體類一切‘內部管’的自定義模板

<?php if(w3c()){ ?><?php if(is_front_page() || is_page_template ('page-templates/front-page.php')){?><body> <?php } else{ ?><body id="innerbody"><?php } ?> 
+0

你不在你提供的代碼中使用body class。 http://codex.wordpress.org/Function_Reference/body_class – enguerranws

回答

2

這通常使用的功能是body_class(),並且通常用於該功能的附加是基於所顯示的特定頁面的HTML body標籤,默認類header.php模板內,使他們自己是如此大部分東西都是稀釋的。

您可以通過使用body_class過濾器添加額外的體類,添加以下到functions.php文件:

add_filter('body_class', function($classes) { 
    // add custom class to the $classes array and return the $classes array 
    if (is_front_page() || is_page('page-slug')) { 
     $classes[] = 'innerbody'; 
    } 
    return $classes; 
}); 

現在你可以使用conditional tags該函數內部來測試必須被滿足的條件採取具體行動,在這種情況下,添加額外的類到身體標記。我建議您也檢查Template Hierarchy文檔,這是瞭解WordPress中主題和模板概念的第一步。

0

只是另一個is_page_template()呼叫添加到您的if()功能,另一個OR(||)在您if()

<?php if(w3c()){ ?> 
     <?php if(is_front_page() || is_page_template ('custom-template.php') || is_page_template ('page-templates/front-page.php')){?> 
      <body> 
     <?php } else{ ?> 
      <body id="innerbody"> 
     <?php } ?>