這篇課程將講解其他 3 個可以增加到日誌中的元素:Else,post ID, 和 連結的 title 值。儘管它們是可選的,但是我們幾乎可以在我每一個免費的主題中都能找到。
開始之前,不要忘記啟動 Xampp 。
第 1 步:Else
在 <?php endwhile; ?> 的下面輸入以下程式碼:
<?php else : ?>
<div class=」post」>
<h2><?php _e(』Not Found』); ?></h2>
</div>
大致如下:

儲存重新整理瀏覽器,但是應該注意到沒有任何變化。我們返回教程 #5 — 主迴圈,去解釋你剛才上面輸入的是什麼?
這裡就是主迴圈的部分程式碼:
<?php if(have_posts()) : ?><?php while(have_posts()) : the_post(); ?>
<?php endwhile; ?>
<?php endif; ?>
第一,if(have_posts()) 檢查部落格是否有日誌,
第二,while(have_posts()) 執行 the_post() 去呼叫日誌。而 Else 是當部落格完全沒有日誌的時候執行的。 while() 和 endwhile; 應該巢狀在 if() 和 else : 之間。 所以 <?php else : ?> 應該在 <?php endwhile; ?> 之後。
現在你知道什麼是 else 了吧,當沒有任何日誌或者當找不到任何日誌的時候,告訴 WordPress 怎麼處理,讓 WordPress 顯示錯誤資訊 Not Found,或者其他任何你想要的東西。我們可以下載任一款免費主題,看一下它的 index.php 檔案怎麼寫的。
在上面的例子中,Not Found 錯誤資訊是在 <?php _e(」); ?> 之中。如我上一篇所說,這不是必需的,只是為了讓主題可翻譯。
整個資訊和程式碼 Not Found 外面有 <h2> 和 </h2> 。這個同樣也不是必需的。你可以簡單使用:
<div class=」post」>
Not Found
</div>
但是,給這個錯誤資訊使用上 <h2> (子標題) 標籤能夠使它更明顯,讓訪問者注意到這個頁面上沒有任何東西。
那麼 <div class=」post」> 和 </div> 用來做什麼的呢?恩,我們肯定不想你的錯誤資訊在 「茫茫蠻荒之地」 之間滯留,對不?我們用 <div class=」post」> 和 </div> 標籤圍住每篇日誌。所以同樣,儘管是錯誤資訊不是真正的日誌內容,但是我們其實可以把它當作日誌來處理。
第 2 步:日誌 ID
增加 id=」post-<?php the_ID(); ?>」 到 <div class=」post」>
![]()
儲存並重新整理瀏覽器。然後 檢視 > 頁面原始碼。現在我們會發現現在每篇日誌都附加上了一個數字或者說是日誌 ID 。 the_ID() 只是呼叫每篇日誌的 ID 。
為什麼使用它呢?這是用來定製個別的日誌的面貌。後面,當你使用 style.css 檔案去告訴你的主題日誌將看起像怎麼樣。如果透過給每篇日誌附加唯一的 ID,你就可以針對單獨的一篇日誌進行樣式化,使得它和其他日誌看起來不一樣。如果沒有 ID,你將沒有辦法透過 style.css 檔案使它和其他日誌不一樣。
同時把 class 和 id 賦給同一個 DIV 標籤,可以嗎?DIV 是標籤,class 是一個屬性,id 也是是一個屬性。每個標籤能擁有多個屬性,如 DIV 就可以同時有 class 和 id 這兩個屬性。 (註釋:id 是一個 XHTML 屬性。 the_ID() 是 PHP 函式。他們是不同的,)
第 3 步:連結標題
增加 title=」<?php the_title(); ?>」 到日誌的標題連結。
![]()
儲存並重新整理瀏覽器。然後再去檢視原始碼,查詢任何日誌的標題連結,如果日誌的標題連結是 Hello World,那麼他的左邊應該有 title=」Hello World」。
title=」」 是 <a>(連結) 標籤的另一個屬性。在雙引號中的是連結的描述。在這裡,每篇日誌的標題也是連結的描述。這就是為什麼我們要再次使用 the_title() 這個 PHP 函式。
如果不使用 the_title() 作為 title=」」的值,那麼每篇日誌標題連結將會有同樣的描述。舉個例子,如果用 title=」Click me」 取代 the_title(),每篇日誌標題連結都將會用 Click me 作為描述。
返回頁面。把滑鼠移到任何一篇日誌標題的連結上,描述資訊將會彈出,這就是剛剛增加的。增加描述到連結是非常有用的,當你其他站點需要掃描你的部落格的時候,如 Technorati.com,每次你發表日誌的時候,WordPress 通知 Technorati 和其他網站你的部落格已經更新了。 Technorati 然後就會來到你的部落格,掃描它,並索引得到一個你日誌的摘要,這其中會包括你連結標題的描述。