2012-04-24 48 views
-3

遇到此If If語句有問題。我可以在沒有語句的情況下顯示徽標,因此所有內容都可以正確顯示,但是當我將If Else語句放入時,它不會顯示徽標或H1標題。If Else Statement with logo in WordPress主題

在此先感謝您的幫助。

<?php if ($options['flaunt_one_logo'] != '') : ?> 
     echo <a href="<?php bloginfo('url')?>/" class="<?php logo_container_class(); ?>"><img src="<?php echo get_option('flaunt_one_logo'); ?>" alt="<?php bloginfo('name')?>" /> 
    else 
     echo <h1 id="site-title"><span><a href="<?php echo esc_url(home_url('/')); ?>" title="<?php echo esc_attr(get_bloginfo('name', 'display')); ?>" rel="home"> <?php bloginfo('name'); ?></a></span></h1>; 

    <?php endif; ?> 

回答

1

你的回聲超出了php代碼。 http://php.net/manual/en/control-structures.if.php

<?php if ($options['flaunt_one_logo'] != '') { 
     echo "<a href=\"".bloginfo('url')."\" class=\"".logo_container_class()."\"><img src=\"".get_option('flaunt_one_logo')."\" alt=\"".bloginfo('name').">"; 
} else { 
     echo "<h1 id=\"site-title\"><span><a href=\"".esc_url(home_url('/'))."\" title=\"".esc_attr(get_bloginfo('name', 'display'))."\" rel=\"home\">".bloginfo('name')."</a></span></h1>"; 
} 
?> 
+0

謝謝你閉上你的第一<a>。我將不得不花費一些時間在它上面。 使用您提供的代碼,我可以讓H1出現,但徽標沒有顯示。目前在選項中設置了一個標誌,所以應該顯示。 有什麼想法? – 2012-04-24 22:42:50

+0

我也注意到H1沒有抓住CSS規則,只是保持小段,就好像它是段落文本。 – 2012-04-24 22:49:07

+0

get_option是你聲明的一個函數嗎?不確定Wordpress是如何工作的。嘗試使用$ options ['flaunt_one_logo']而不是get_option('flaunt_one_logo')。 – Joseph 2012-04-24 22:51:00

0

試試這個:

在IF語句也讀了
你還忘了一個</a>

<?php if (get_option('flaunt_one_logo', false) !== false) : ?> 
    <a href="<?php bloginfo('url')?>/" class="<?php logo_container_class(); ?>"> 
     <img src="<?php echo get_option('flaunt_one_logo'); ?>" alt="<?php bloginfo('name')?>" /> 
    </a> 
<?php else ?> 
    <h1 id="site-title"> 
     <span> 
      <a href="<?php echo esc_url(home_url('/')); ?>" title="<?php echo esc_attr(get_bloginfo('name', 'display')); ?>" rel="home"> 
      <?php bloginfo('name'); ?> 
      </a> 
     </span> 
    </h1>; 
<?php endif; ?>