2012-05-23 137 views
2

那麼這裏是我正在使用的wordpress主題上顯示標題部分的代碼。如何在wordpress主題的不同頁面顯示不同的標誌?

<div id="site-branding" class="clearfix"> 
     <?php 
     $logo = isset($options['logo'])? $options['logo']: ''; 
     if ($logo == ""){ 
      $hidetitle = $options['hide_title']; 
      if ($hidetitle == "No") { 

       if(!is_home() || !is_front_page()) { ?> 
        <div class="site-title"><a href="<?php echo esc_url(home_url('/')); ?>" title="<?php echo esc_attr(get_bloginfo('name', 'display')); ?>"><?php bloginfo('name'); ?></a></div> 
        <div class="site-description"><?php bloginfo('description'); ?></div> 
       <?php } else { ?> 
        <h1 class="site-title"><a href="<?php echo esc_url(home_url('/')); ?>" title="<?php echo esc_attr(get_bloginfo('name', 'display')); ?>"><?php bloginfo('name'); ?></a></h1> 
        <div class="site-description"><?php bloginfo('description'); ?></div> 

      <?php } } 
     } else { 
      echo '<div class="site-logo"><a href="'. esc_url(home_url('/')) .'">'; 
      echo '<img title="'. get_bloginfo('name') .'" src="' . $logo .'" />'; 
      echo '</a></div>'; 
     } ?> 
    </div><!-- end #site-branding --> 

此代碼的第一部分檢查徽標的存在。如果徽標不存在,則只會顯示主題的名稱和描述,前提是未將主題選項隱藏。它的名稱和描述的樣式和首頁在首頁/首頁上略有不同,而其他頁面則採用不同的風格。但是,如果徽標存在,它會在所有頁面上顯示徽標。

現在我要實現的是風格(與CSS)的LOGO不同的前/主頁上,而其他網頁我想一些額外的CSS類添加到標誌。

我試圖在上面的代碼的第二部分使用elseif語句,但無法獲得所需的結果。

請教我如何正確地做到這一點。

更新: 因爲我不能發佈答案給我自己的問題,我在這裏發佈。 那麼,我使用這段代碼刪除了一些PHP關閉元素,它的工作就像魅力。爲了確保沒有錯誤,我再次在此發佈它。

if(is_home() || is_front_page()) { 
     echo '<h1 class="site-logo"><a href="'. esc_url(home_url('/')) .'">'; 
     echo '<img calss="mylogo1" title="'. get_bloginfo('name') .'" src="' . $logo .'" />'; 
     echo '</a></h1>'; 
      } else { 
     echo '<div class="site-logo"><a href="'. esc_url(home_url('/')) .'">'; 
     echo '<img calss="mylogo2" title="'. get_bloginfo('name') .'" src="' . $logo .'" />'; 
     echo '</a></div>'; 
     } ?> 

回答

2
if(!is_home() || !is_front_page()) { ?> 
    echo '<div class="site-logo"><a href="'. esc_url(home_url('/')) .'">'; 
    echo '<img calss="mylogo1" title="'. get_bloginfo('name') .'" src="' . $logo .'" />'; 
    echo '</a></div>'; 
<?php } else { ?> 
    echo '<div class="site-logo"><a href="'. esc_url(home_url('/')) .'">'; 
    echo '<img calss="mylogo2" title="'. get_bloginfo('name') .'" src="' . $logo .'" />'; 
    echo '</a></div>'; 
<?php } ?> 

我們您以前使用的相同,設定不同的級別(即mylogo1/mylogo2)爲您的每個條件。

+0

感謝您的提示。但回聲是出於PHP,但我認爲它應該在PHP內正常工作。我對PHP一無所知,但我使用了這段代碼,但它不起作用。該網站根本沒有加載。這就是爲什麼這麼說。 –

+0

查看以上更新@ ajay-patel。順便說一句,非常感謝。你的答案奏效。一旦你告訴我在上面的代碼中沒有錯誤,我會給它一個投票。 –

+0

@AamirUsman我不這麼認爲,在我的編輯器中試過沒有任何類型的語法錯誤 –

相關問題