這篇將和像上一篇?jiǎng)?chuàng)建header.php,sidebar.php 和 footer.php 這些模板文件一樣創(chuàng)建更多的子模板文件。
現(xiàn)在 index.php 文件已被拆分,這一切都變得更簡(jiǎn)單。
第1步:archive.php
在做這步之前,查看你的側(cè)邊欄,點(diǎn)擊其中的一個(gè)存檔鏈接,結(jié)果的頁(yè)面是不是和首頁(yè)沒(méi)有什么不同?
- 創(chuàng)建一個(gè)新文件:archive.php
- 把 index.php 中所有東西復(fù)制到 archive.php
- 保存 archive.php
- 在 archive.php 文件,把 the_content 改成 the_excerpt。
- 再次保存 archive.php 文件
通過(guò)創(chuàng)建一個(gè) archive.php 合并把它改成和 index.php 不一樣,這就是定制化存檔頁(yè)面的外觀。
現(xiàn)在如果你刷新你的存檔頁(yè)面,它將只顯示摘要而不是全文的日志。
為什么你想這么做呢? — 防止 Google 以為重復(fù)內(nèi)容懲罰你的博客,如果一個(gè)存檔頁(yè)面和首頁(yè)顯示相同的內(nèi)容,那就是重復(fù)的內(nèi)容。
如果是私人的博客呢?那么就沒(méi)有必要去區(qū)分首頁(yè)和存檔頁(yè)面。但這并不是說(shuō)摘要對(duì)私人博客沒(méi)有用。
同樣 — 默認(rèn)你的類(lèi)別頁(yè)面將使用 archive.php 顯示內(nèi)容,如果你沒(méi)有 archive.php文件,類(lèi)別頁(yè)面將使用 index.php 顯示內(nèi)容。
如果你想類(lèi)別頁(yè)面和首頁(yè)和存檔頁(yè)面看起來(lái)不一樣,那么創(chuàng)佳一個(gè) category.php 文件并定制化它。
第2步:search.php
- 創(chuàng)建一個(gè)新文件:search.php
- 把 archive.php 中所有東西復(fù)制到 search.php
- 保存就完成了。
現(xiàn)在所有的,所有的搜索結(jié)果將會(huì)返回摘要。如果沒(méi)有 search.php 這個(gè)模板文件,搜索選項(xiàng)將會(huì)使用index.php 去顯示搜索結(jié)果。
(可選)你可以返回到課程1去回顧這層次結(jié)構(gòu)。
第3步:page.php 和 single.php
- 創(chuàng)建兩個(gè)新文件:page.php 和 single.php
- 把 index.php 中所有內(nèi)容拷貝到 page.php 和 single.php。(從現(xiàn)在開(kāi)始,頁(yè)面和單篇日志應(yīng)該是一樣的。)
- 保存頁(yè)面和單篇日志文件,關(guān)閉它們。
第4步:定制 page.php
還記得靜態(tài)頁(yè)面和頁(yè)面之間的不同嗎?page.php 模板文件是用來(lái)定制化這些特殊靜態(tài)靜態(tài)頁(yè)面。
第一,在 page.php 中的 <?php the_content(); ?> 下面輸入以下代碼:
<?php link_pages(’<p><code>Pages:</strong> ‘, ‘</p>’, ‘number’); ?>
和
<?php edit_post_link(’Edit’, ‘<p>’, ‘</p>’); ?>
第二,從 page.php 中移除 postmetadata 代碼。結(jié)果如下:
第三,在 page.php 中移除 posts_nav_link() 或者導(dǎo)航模塊。
剛才發(fā)生了什么?
第一行代碼是用于顯示頁(yè)面的分頁(yè)鏈接。
舉個(gè)例子,編輯 About 頁(yè)面。根據(jù)我的屏幕截圖增加代碼:
當(dāng)你想把一個(gè)非常長(zhǎng)的頁(yè)面分成幾個(gè)頁(yè)面的時(shí)候,這是非常有用的。
第二行代碼是用于顯示可以用來(lái)編輯靜態(tài)頁(yè)面的編輯鏈接。
通常頁(yè)面是沒(méi)有分類(lèi),并且通常不想給他們顯示創(chuàng)建時(shí)間,所以需要去移除 postmetadata。同樣要移除 posts_nav_link() 代碼因?yàn)?strong>靜態(tài)頁(yè)面不會(huì)顯示后一頁(yè)和前一頁(yè)的鏈接。
保存 page.php 文件并關(guān)閉它。
第5步:定制 single.php
點(diǎn)擊一個(gè)日志的標(biāo)題去閱讀日志其余部分就會(huì)帶你到單篇日志查看模式。single.php模板就是用于處理查看單篇日志時(shí)的外觀。
在 single.php 中的 <?php the_content() ?> 下輸入:
<?php link_pages(’<p><strong>Pages:</strong> ‘, ‘</p>’, ‘number’); ?>
是的,這是相同的用于編碼頁(yè)面的分頁(yè)鏈接的代碼。同樣我們也可以把日志分成多篇子日志。
第二,在 postmetadata 區(qū)域,移除 <?php comments_popup_link(); ?> 函數(shù)和前面的 <br /> 標(biāo)簽。不要移除整個(gè) postmetadata。
移除了留言鏈接函數(shù)是因?yàn)樵趩纹罩静榭茨J较铝粞枣溄雍瘮?shù)是不起作用,所以要在 singel.php 文件中移除它。只有管理員可見(jiàn)的編輯鏈接,在 BR 標(biāo)簽的左邊。你不想跳過(guò)一行才能看到這個(gè)本來(lái)你可以在右邊看到鏈接?這就是移除 BR 標(biāo)簽的原因。
第三,用以下代碼取代 <?php posts_nav_link(); ?>:
<?php previous_post_link(’? %link’) ?> <?php next_post_link(’ %link ?’) ?>
在前面,存檔,分類(lèi)和搜索頁(yè)面,我們使用 posts_nav_link() 函數(shù)去調(diào)用后一頁(yè)和前一頁(yè)的鏈接。對(duì)于查看單一日志的頁(yè)面,它是沒(méi)有后一頁(yè)和前一頁(yè)鏈接的,我們可以使用 previous_post_link() 和 next_post_link() 函數(shù)去調(diào)用前一篇日志和后一篇日志的鏈接。
保存 single.php 文件,到某篇日志下查看在導(dǎo)航區(qū)域的不同。
課程回顧
- 創(chuàng)建了四個(gè)新的文件或者或者子模板:archive.php,search.php,page.php 和single.php。
- archive.php 和 search.php 模板文件是相同的。
- Pages (和日志不同)是沒(méi)有分類(lèi)的,他們同樣沒(méi)有后一頁(yè)和前一頁(yè)的鏈接。
- Single.php 不會(huì)顯示留言鏈接(被 comments_popup_link() 函數(shù)調(diào)用)并且他不用 posts_nav_link() 去調(diào)用導(dǎo)航鏈接。
未經(jīng)允許不得轉(zhuǎn)載:445IT之家 » WordPress主題開(kāi)發(fā)教程二十四:子模板文件