【问题标题】:Can someone explain this PHP code? [closed]有人可以解释这个 PHP 代码吗? [关闭]
【发布时间】:2015-10-28 21:53:31
【问题描述】:
    <h1 class="site-title">
       <a href="<?php echo esc_url( home_url( '/' ) ); ?>" 
       rel="home"><?php bloginfo( 'name' ); ?>
       </a>
    </h1>
    if (is_category('Ponies')) { ?>
      // overlay a pretty rainbow on the logo for the ponies category
       <img id="rainbow"
          src='<?php bloiginfo('template_directory');?>/img/rainbow.png" 
          alt="OMG! Ponies! " />
    <?php  } ?>

我在匹配 PHP 标记时遇到问题。代码的注释说“现在只要内容的类别是小马,你的标题也包括彩虹.png。”但很清楚这是如何发生的。实际代码在 Williams 的 WordPress Design and Development 的 p245 上。感谢您再次关注它。

【问题讨论】:

  • 任何体面的 IDE 都可以让您追溯大括号。我最喜欢的是 PHPStorm

标签: php wordpress-theming


【解决方案1】:

“如果”不在&lt;?php ... ?&gt; 内。必须是:

<?php if (is_category('Ponies')) { ?>

【讨论】:

    【解决方案2】:

    当中间有 HTML 时,我更喜欢使用 &lt;?php if (condition): ?&gt;。 但无论如何...

    1) if() 语句需要在 php 标签内。

    2) 您不需要echo 来检索博客信息。

    bloginfo() documentation

    3) 你在底部拼错了 bloginfo...

    我的代码:

    <h1 class="site-title">
       <a href="<?php echo esc_url(home_url('/')); ?>" rel="home">
          <?php $bloginfo('name'); ?>
       </a>
    </h1>
    
    <?php if (is_category('Ponies')) : ?>
        <img id="rainbow"
             src="<?php get_bloginfo('template_directory') . '/img/rainbow.png'; ?>"
             alt="OMG! Ponies!" />
    <?php endif; ?>
    

    【讨论】:

      猜你喜欢
      • 2014-05-18
      • 1970-01-01
      • 1970-01-01
      • 2012-11-23
      • 2011-11-24
      • 1970-01-01
      • 2013-02-27
      相关资源
      最近更新 更多