wordpress主迴圈顯示文章列表不同樣式的方法

2020-09-19 14:00:45

假如我們選擇首頁顯示最新文章,並且:第一篇文章顯示摘要,後面的只顯示標題。。。還有第一篇文章顯示廣告之類的。。。那麼如何利用迴圈控制呢?

1、首頁顯示文章的程式碼一般都是:

<?php if (have_posts()) : ?>     
<!--檢查是否有文章如果有,繼續執行,沒有就跳到  else 那裡-->   
<?php  while (have_posts()) : the_post(); ?>
<!--開始準備文章內容,開始迴圈,每次迴圈輸出一篇文章-->   
此處顯示文章內容或標題之類的。。   
<?php  endwhile ; ?> 
<!-- while 迴圈結束-->   
<?php  else : ?>   
此處顯示未找到文章時的資訊,比如404相關   
<?php  endif ; ?> 
<!-- if 結束-->

2、要想精確的控制每篇文章,我們先在迴圈前定義一個變數 $ashu_i=1 來計數,變數名隨便,然後每回圈一次,$ashu_i加1,例子我把index.php中的程式碼改成下面的--

<?php if (have_posts()) :$ashu_i=0;?>   
<?php while (have_posts()) : the_post();$ashu_i++;?>   
<?php echo "這是第 $ashu_i 篇文章:<br/>";?>   
<?php the_title();?>   
<?php echo "<hr>";   
<?php endwhile; ?>   
<?php else : ?>   
此處顯示未找到文章時的資訊,比如404相關   
<?php endif; ?>

上面的例子就給每篇文章來了個簡單控制。
3、具體要想讓第一篇文章顯示摘要,而餘下的顯示標題--程式碼:

<?php if (have_posts()) :$ashu_i=0;?> 
<!--檢查是否有文章,並定義計數變數初始值為0 -->   
<?php while (have_posts()) : the_post();$ashu_i++;?>
 <!-- 開始迴圈,第一次迴圈$sahu_i為1,第二次為2,依次。。 -->   
<?php if($ashu_i==1){?>      <!-- 如果是第一篇文章 -->   
<?php the_content();}else{?> <!-- 顯示內容 -->   
<?php the_title();}?>        <!-- 如果不是第一篇顯示標題 -->   
<?php endwhile; ?>           <!-- 一次while迴圈結束 -->   
<?php else : ?>              <!--如果沒有文章-->   
 此處顯示未找到文章時的資訊,比如404相關   
<?php endif; ?>          <!--if結束 -->

上面的程式碼就可以實現第一篇文章顯示摘要,而後面的文章都只顯示標題

 

您可能感興趣的文章:


▪ WordPress資料庫及各表結構功能詳解

▪ 利用Bootstrap構建你的響應式WordPress主題( 五)

▪ wordpress使用register_post_type 函數建立自定義文章型別∶

▪ WordPress函數:add meta box(自定義新增Meta模組)

▪ WordPress邊欄小工具調取某段時間內最熱文章

▪ wordpress短程式碼顯示使用者註冊日期

▪ wordpress文章頁面新增字型增大減小連結

▪ 提升WordPress 國外主題開啟速度全面解決方案

▪ 開啟Gzip壓縮加快你的wordpress網站載入瀏覽速度

▪ WordPress函數:comments_template(載入評論模板