侧边栏没有显示,这段代码有什么问题?

时间:2011-07-02 作者:jwp

这是我的侧边栏中的内容。php:

  <aside id="sidebar">
    <?php if ( is_user_logged_in() ) {
      echo \'<a href="/community"><img id="visit-the-forums" src="\'. bloginfo(\'template_url\') . \'/images/visit-the-forums.png" alt="Check out the Forums!" /></a>\'
    } else {
      echo \'<a href="/community"><img id="join-the-forums" src="\'. bloginfo(\'template_url\') . \'/images/join-the-forums.png" alt="Join the Forums!" /></a>\'
    }
    ?>
    <a id="side-ad">
      <img src="<?php bloginfo(\'template_url\') ?>/images/ipad-ad.png" alt="iPad 2 Giveaway!" />
    </a>
  </aside>
出于某种原因,它不会显示(甚至在标记中也不会显示)任何页面。我已经仔细检查了所有其他模板,以确保<?php get_sidebar(); ?> 包括在内。上面的代码有什么问题吗?

编辑:我应该注意,下面的内容是有效的,也就是说,没有if/else语句。

  <aside id="sidebar">
    <a href="/community"><img id="join-the-forums" src="<?php bloginfo(\'template_url\') ?>/images/join-the-forums.png" alt="Join the Forums!" /></a>
    <a id="side-ad">
      <img src="<?php bloginfo(\'template_url\') ?>/images/ipad-ad.png" alt="iPad 2 Giveaway!" />
    </a>
  </aside>

2 个回复
最合适的回答,由SO网友:h4xnoodle 整理而成

标记是否在<?php get_sidebar(); ?> 如约赶到

我猜这是一个无声的PHP错误,因为if/else块中的行不以分号结尾。:)

SO网友:Hans Zimermann

分号应该出现在if/else中每个echo的末尾。

为了帮助您找到一些错误,激活WordPress调试变量是一种很好的做法,这样您就可以得到一些关于代码的通知。

您可以在WP_DEBUG 变量。在wordpress根安装中查找该文件wp-config.php , 打开/编辑并搜索包含

define(\'WP_DEBUG\', false);
更改为true,如下所示:

define(\'WP_DEBUG\', true);
现在,当打开wite测试代码时,如果出现一些错误或通知,您将进入页面顶部。甚至在达斯堡。

结束