2014-06-12 78 views
0

我是一个前端Web开发人员正在为某些主题选项支持而苦苦挣扎。我努力在我的header.php中编写一个简单的函数,它允许我执行以下操作:PHP如果有图像显示图像,如果其他文字

“如果用户上传图像,使用图像,否则使用'logo_text'和echo输出。图片或logo_text使用默认的'我的网站'“

任何人都可以指出我在正确的方向开始?我不知道从哪里开始。

<li class="name"> 
     <!-- Logo Text --> 
     <h1><a href="<?php bloginfo('url'); ?>/home" title="<? echo esc_attr(get_bloginfo('name', 'display')); ?>" rel="home"> 
     <? $novus_logo_text = get_option('novus_logo_text'); echo $novus_logo_text; ?> 
     </a></h1> 
     <!-- Logo Image --> 
     <a href="<?php bloginfo('url'); ?>/home" title="<? echo esc_attr(get_bloginfo('name', 'display')); ?>" rel="home"> 
     <? $novus_logo_upload = get_option('novus_logo_upload'); echo '<img class=\"logo"\ src="'.$novus_logo_upload.'" width=\"100%"\ />'; ?> 
     </a> 
    </li> 

上面的代码工作得很好。但是,如果客户端使用logo_text输入并上传徽标图像,则它们都会输出。我需要或者,与图像优先。我希望这是有道理的。

+0

http://www.php.net/manual/en/control-structures.elseif.php – cmorrissey

+0

我欣赏的快速反应,但我又是不是PHP萨维。我是前端图形家伙谁可以有点拼凑php。上面的代码+我正在努力完成的工作对我来说是一种砖墙。 :P – FlannelBeard

+0

'<?php if($ novus_logo_upload = get_option('novus_logo_upload')){// show logo} else {// show text}'?所以如果'novus_logo_upload = get_option('novus_logo_upload')''返回'true'(即有图片),那么显示标志,否则显示文本。 – Sean

回答

0

你真的应该学会基本控制结构,即使你前端的家伙,ifwhileforforeachswitch

<li class="name"> 
    <?php if($novus_logo_upload = get_option('novus_logo_upload')){ ?> 
    <!-- Logo Image --> 
    <a href="<?php bloginfo('url'); ?>/home" title="<? echo esc_attr(get_bloginfo('name', 'display')); ?>" rel="home"> 
    <? echo '<img class=\"logo"\ src="'.$novus_logo_upload.'" width=\"100%"\ />'; ?> 
    </a> 
    <?php } else if($novus_logo_text = get_option('novus_logo_text')){ ?> 
    <!-- Logo Text --> 
    <h1><a href="<?php bloginfo('url'); ?>/home" title="<? echo esc_attr(get_bloginfo('name', 'display')); ?>" rel="home"> 
    <? echo $novus_logo_text; ?> 
    </a></h1> 
    <?php } else { ?> 
    <!-- Default --> 
    <?php } ?> 
</li> 
+0

这对我有用。非常感谢,它的功能正常。这是我想学习的东西,但我最初是作为平面设计师而不是程序员。我做得很好,但是我远远达不到这个级别的PHP。我的初学者模板的示例(尚未作为'主题'开发)可以在这里进行:http://www.elevancement.com/novus-theme/ – FlannelBeard

+0

我使用PHP文档站点来破译上面的代码并了解什么我需要。再次感谢你,这非常有帮助。 – FlannelBeard

相关问题