這篇課程將講解其他 3 個可以增加到日誌中的元素:Elsepost 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 然後就會來到你的博客,掃描它,並索引得到一個你日誌的摘要,這其中會包括你鏈接標題的描述。