這篇課程將講解其他3個(gè)可以增加到日志中的元素:Else,post ID, 和 鏈接的 title 值。盡管它們是可選的,但是我們幾乎可以在我每一個(gè)免費(fèi)的主題中都能找到。
開(kāi)始之前,不要忘記啟動(dòng) Xampp。
第1步:Else
在 <?php endwhile; ?> 在下面輸入以下代碼:
<?php else : ?>
<div class=”post”>
<h2><?php _e(’Not Found’); ?></h2>
</div>
大致如下:
保存刷新瀏覽器,但是應(yīng)該注意到?jīng)]有任何變化。我們返回教程 #5 — 主循環(huán),去解釋你剛才在上面輸入的是什么?
這里就是主循環(huán)的部分代碼:
<?php if(have_posts()) : ?><?php while(have_posts()) : the_post(); ?>
<?php endwhile; ?>
<?php endif; ?>
第一,if(have_posts()) 檢查博客是否有日志,
第二,while(have_posts()) 執(zhí)行 the_post() 去調(diào)用日志。而 Else 是當(dāng)博客完全沒(méi)有日志的時(shí)候執(zhí)行的。 while() 和 endwhile; 應(yīng)該嵌套在 if() 和 else :之間。 所以 <?php else : ?> 應(yīng)該在 <?php endwhile; ?> 之后。
現(xiàn)在你知道什么是 else 了吧,當(dāng)沒(méi)有任何日志或者當(dāng)找不到任何日志的時(shí)候,告訴 WordPress 怎么處理,讓 WordPress 顯示錯(cuò)誤信息 Not Found,或者其他任何你想要的東西。我們可以下載任何一款免費(fèi)主題,看一下它的 index.php 文件怎么寫的。
在上面的例子中,Not Found 錯(cuò)誤信息是在 <?php _e(”); ?> 之中。如我上一篇所說(shuō),這不是必需的,只是為了讓主題可翻譯。
整個(gè)信息和代碼 Not Found 外面有 <h2> 和 </h2>。這個(gè)同樣也是必需的。你可以簡(jiǎn)單使用:
<div class=”post”>
Not Found
</div>
但是,給這個(gè)錯(cuò)誤的信息使用上 <h2> (子標(biāo)題)標(biāo)簽?zāi)軌蚴顾黠@,讓訪問(wèn)者注意到這個(gè)頁(yè)面上沒(méi)有任何東西。
那么 <div class=”post”> 和 </div> 用來(lái)做什么的呢?恩,我們肯定不想你的錯(cuò)誤信息在“茫茫蠻荒之地”之間滯留,對(duì)不?我們用 <div class=”post”> 和 </div> 標(biāo)簽圍住每篇日志。所以同樣,盡管是錯(cuò)誤信息不是真正的日志內(nèi)容,但是我們其實(shí)可以把它當(dāng)作日志來(lái)處理。
第2步:日志 ID
增加 id=”post-<?php the_ID(); ?>” 到 <div class=”post”>
保存并刷新瀏覽器。然后 查看 > 頁(yè)面源代碼?,F(xiàn)在我們會(huì)發(fā)現(xiàn)現(xiàn)在每篇日志都附加上了一個(gè)數(shù)字或者說(shuō)是日志 ID。the_ID() 只是調(diào)用每篇日志的 ID。
為什么使用它呢?這是用來(lái)定制個(gè)別的日志的面貌。后面,當(dāng)你使用 style.css 文件去告訴你的主題日志將看起來(lái)怎么樣。如果通過(guò)給每篇日志附加唯一的 ID,你就可以針對(duì)單獨(dú)的一篇日志進(jìn)行樣式化,使得它和其他日志看起來(lái)不一樣。如果沒(méi)有 ID,你將沒(méi)有辦法通過(guò) style.css 文件使它和其他日志不一樣。
同時(shí)把 class 和 id 賦給同一個(gè) DIV 標(biāo)簽,可以嗎?DIV 是標(biāo)簽,class 是一個(gè)屬性,id 也是一個(gè)屬性。每個(gè)標(biāo)簽?zāi)軗碛卸鄠€(gè)屬性,如 DIV 就可以同時(shí)有 class 和id這兩個(gè)屬性。(注釋:id 是一個(gè) XHTML 屬性。the_ID() 是 PHP 函數(shù)。他們是不同的,)
第3步:鏈接標(biāo)題
增加 title=”<?php the_title(); ?>” 到日志的標(biāo)題鏈接。
保存并刷新瀏覽器。然后再去查看源代碼,查找任何日志的標(biāo)題鏈接,如果日志的標(biāo)題鏈接是 Hello World,那么他的左邊應(yīng)該有 title=”Hello World”。
title=”” 是 <a>(鏈接)標(biāo)簽的另一個(gè)屬性。在雙引號(hào)中的是鏈接的描述。在這里,每篇日志的標(biāo)題也是鏈接的描述。這就是為什么我們要再次使用 the_title() 這個(gè) PHP 函數(shù)。
如果不使用 the_title() 作為 title=””的值,那么每篇日志標(biāo)題鏈接將會(huì)有同樣的描述。舉個(gè)例子,如果用 title=”Click me” 取代 the_title(),每篇日志標(biāo)題鏈接都將會(huì)用Click me 作為描述。
返回頁(yè)面。把鼠標(biāo)移到任何一篇日志標(biāo)題的鏈接上,描述信息將會(huì)彈出,這就是剛剛增加的。增加描述到鏈接是非常有用的,當(dāng)你其他站點(diǎn)需要掃描你的博客的時(shí)候,如 Technorati.com,每次你發(fā)表日志的時(shí)候,WordPress 通知 Technorati 和其他網(wǎng)站你的博客已經(jīng)更新了。Technorati 然后就會(huì)來(lái)到你的博客,掃描它,并索引得到一個(gè)你日志的摘要,這其中會(huì)包括你鏈接標(biāo)題的描述。
未經(jīng)允許不得轉(zhuǎn)載:445IT之家 » WordPress主題開(kāi)發(fā)教程九:Else,日志 ID,鏈接標(biāo)題