word press에서 loop을 나열하는 동안 if를 단순화하는 데 도움이 됩니다.
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
....
<?php endwhile; endif; ?>
위의 코드를 잘 이해할 수 있었습니다.
1, if and while 조건을 삭제할 수 있습니까?사용.<?php the_post();?>
직접적으로.
2, 느낌이 들어요.if (have_posts())
와 같습니다.while (have_posts())
중복인가요?
#1: 콜링the_post
루프 없이 게시물 하나만 표시할 수 있습니다.예를 들어, 단일 포스트 페이지에서는 이 방법이 바람직할 수 있습니다.while
루프는 종종 생략됩니다.
<?php
// single.php
if ( have_posts() ):
the_post();
?>
<p><?php the_content(); ?></p>
<? else: ?>
<p>No post found.</p>
<? endif ?>
#2: 맞습니다. 게시한 토막글은 다음과 같이 중복됩니다.if
그리고.while
.
그러나 대부분의 테마에서는 다음과 같은 용도로 사용됩니다.
<?php
if ( have_posts() ):
while ( have_posts() ): the_post();
?>
<div class="post"><?php the_content(); ?></div>
<?php endwhile; else: ?>
<p>No posts found.</p>
<?php endif; ?>
의 사용.if
이 경우 statement는 게시물이 전혀 없는 경우 표시할 수 있습니다.만약 우리가 단지 사용한다면.while
코드를 입력하면 게시물이 없는 페이지는 아무것도 출력되지 않습니다.
while(have_postS())
자동으로 평가할 것입니다.have_postS()
…할 바와 같이if(have_postS())
하지만 지금처럼 계속될 겁니다true
(루프이기 때문에) 만약 루프와 루프를 종료하는 메커니즘을 사용해야 한다면,while
또 다른
이번에는if
더 잘 할 겁니다
워드프레스는 모르지만 보기에 has_posts()는 truth 또는 false 값을 반환합니다.while
loop은 truth 값이 조건으로 전달된 경우에만 실행되므로 yes(예)를 사용하면 이 값을 후핀 3행으로 줄일 수 있습니다.
<?php while (have_posts()) : the_post(); ?>
....
<?php endwhile;?>
편집: 복사 붙여넣기 코드가 잘못된 이유에 대한 또 다른 예로 이를 꼽아 보십시오.
언급URL : https://stackoverflow.com/questions/5752515/help-simplify-if-while-list-loop-in-wordpress
'programing' 카테고리의 다른 글
AngularJs 식을 이용한 HTML 복호화 (0) | 2023.09.21 |
---|---|
Oracle: PL/SQL 함수에서 아무것도 반환하지 않을 수 있습니까? (0) | 2023.09.21 |
mysql DATETIME 열을 epoch seconds로 변환 (0) | 2023.09.21 |
쿼리 작성기가 타임스탬프를 삽입하지 않음 (0) | 2023.09.16 |
trigger mysql에서 select에서 값을 가져와 IF의 조건에 사용하는 방법 (0) | 2023.09.16 |