2014-07-14 7 views
1

WordPress 테마를 코딩하는 방법을 배우려하고 있으며 아래에 게시 된 것과 같은 코드를 발견했습니다. 첫 번째 테스트에서 실패한 경우 else 문으로 이동해야하지만 그렇지 않은 경우에는 종료됩니다. 무슨 일 이니?If-else 문이 여러 PHP 코드 스 니펫에서 작동하지 않습니다.

<?php if(ishome() || is_front_page()) : ?> 
       <h1 id="site-title"> 
        <a href="<?php echo home_url(); ?>" title="<?php 
         bloginfo('name'); ?>"> 
          <?php bloginfo('name'); ?> 
        </a> 
       </h1> 
       <h2 id="site-description"> 
        <?php bloginfo('description'); ?> 
       </h2> 
      <?php else : ?> 
       <div id="site-title") 
        <a href="<?php echo homeurl(); ?>" title="<?php 
         bloginfo('name'); ?>" > 
         <?php bloginfo('name'); ?> 
        </a> 
       </div> 
       <div id="site-description"> 
        <?php bloginfo('description'); ?> 
       </div> 
      <?php endif ?> 
+2

'is_home()'* - typo? –

+0

php가 죽으면 - 어떤 함수가 코드를 충돌 시키면 어떤 함수가 죽을까요? ... – user1954544

답변

-5

IF 및 Else 문을 모두 포함하는 대괄호 ({})가 없습니다. html로 php가 산재 해 있으면 깨끗하게 유지해야합니다.

+4

제어 구조 (':')에 대한 대체 구문입니다 - [매뉴얼 참조] (http://php.net/ manual/en/control-structures.alternative-syntax.php) –

0

누락 된 ';'만 볼 수 있습니다. 이 ishome() || is_front_page()이 거짓이 아닌 다른 원인 때문에 모두 때문에 문 IF 첫 번째 누락 사실이라면 마지막 명령 또한

<?php endif; ?> 

의 끝에서 확인해보십시오.

if(true):으로 확인하여 내부로 들어가는 지 확인하십시오.

HIH

0

내 생각 엔 당신이 ishome()를 호출하고 있기 때문에 스크립트가 워드 프레스 기능하지 않은, "죽어"된다는 것이다 (그것은 is_home()의), 당신은 오류보고가 꺼져있는 경우 빈 흰색이 발생할 수 있습니다 유용한 오류 메시지없이 화면에 표시됩니다. 개발/로컬 서버에 대한 오류보고 및 라이브/프로덕션 환경에 대한 오류보고를 설정하는 것이 좋습니다.

<?php if(is_home() || is_front_page()) : ?> 
    <p>Hello world!</p> 
<?php else: ?> 
    <p>Not home page or front page.</p> 
<?php endif; ?> 
관련 문제