子模板文件是從零開端創立 WordPress 主題系列教程的第十五篇,這篇將和像上一篇創立 header.php,sidebar.php 和 footer.php 這些模板文件一樣創立更多的子模板文件。

如今 index.php 文件已被拆分,這一切都變得更簡單。

第 1 步:archive.php
在做這步之前,查看你的側邊欄,點擊其中的一個存檔鏈接,結果的頁面是不是和首頁沒有什麼不同?

•創立一個新文件:archive.php
•把 index.php 中一切東西複製到 archive.php
•保管 archive.php
•在 archive.php 文件,把 the_content 改成 the_excerpt 。
•再次保管 archive.php 文件
經過創立一個 archive.php 文件並把它改成和 index.php 不一樣,這就是定製化存檔頁面的外觀。

如今假如你刷新你的存檔頁面,它將只顯現摘要而不是全文的日誌。

為什麼你想這麼做呢? — 避免 Google 以為反覆內容懲罰你的博客,假如一個存檔頁面和首頁顯現相同的內容,那就是反覆的內容。

假如是私人的博客呢?那麼就沒有必要去辨別首頁和存檔頁面。但這並不是説摘要對私人博客沒有用。

同樣 — 默許你的類別頁面將運用 archive.php 顯現內容,假如你沒有 archive.php 文件,類別頁面將運用 index.php 顯現內容。

假如你想類別頁面和首頁和存檔頁面看起來不一樣,那麼創佳一個 category.php 文件並定製化它。

第 2 步:search.php
•創立一個新文件:search.php
•把 archive.php 中一切東西複製到 search.php
•保管就完成了。
如今一切的,一切的搜索結果將會返回摘要。假如沒有 search.php 這個模板文件,搜索選項將會運用 index.php 去顯現搜索結果。

(可選) 你能夠返回到課程 1 去回憶者層次構造。

第 3 步:page.phpsingle.php

  • 創建兩個新文件:page.phpsingle.php
  • index.php 中所有內容拷貝到 page.phpsingle.php 。 (從現在開始,頁面和單篇日誌應該是一樣的。)
  • 保存頁面和單篇日誌文件,關閉它們。

第 4 步:定製 page.php

還記得靜態頁面頁面之間的不同嗎?page.php 模板文件是用來定製化這些特殊靜態靜態頁面。

第一,在 page.php 中的 <?php the_content(); ?> 下輸入以下代碼:

<?php link_pages(』<p><code>Pages:</strong> 『, 『</p>』, 『number』); ?>

<?php edit_post_link(』Edit』, 『<p>』, 『</p>』); ?>

第二,從 page.php 中移除 postmetadata 代碼。結果如下:

page-php.gif

第三,在 page.php 中移除 posts_nav_link() 或者導航模塊。

remove-navigation.gif

剛才發生了什麼

第一行代碼是用於顯示頁面的分頁鏈接。

nextpage.gif

舉個例子,編輯 About 頁面。根據我的屏幕截圖增加代碼:

add-nextpage.gif

當你想把一個非常長的頁面分成幾個頁面的時候,這是非常有用的。

第二行代碼是用於顯示可以用來編輯靜態頁面的編輯鏈接。

通常頁面是沒有分類,並且通常不想給他們顯示創建時間,所以需要去移除 postmetadata 。同樣要移除 posts_nav_link() 代碼因為靜態頁面不會顯示後一頁前一頁的鏈接。

保存 page.php 文件並關閉它。

第 5 步:定製 <span style="BACKGROUND-COLOR: #edf3de">single.php

點擊一個日誌的標題去閲讀日誌其他局部就會帶你到單篇日誌查看形式。<span style="BACKGROUND-COLOR: #edf3de">single.php 模板就是用於處置查看單篇日誌時的外觀。

<span style="BACKGROUND-COLOR: #edf3de">single.php 中的 <span style="BACKGROUND-COLOR: #edf3de"><?php the_content() ?> 下輸入:

<span style="BACKGROUND-COLOR: #edf3de"><?php link_pages(』

Pages: 『, 『

』, 『number』); ?>

是的,這是相同的用於編碼頁面的分頁鏈接的代碼。同樣我們也能夠把日誌分紅多篇子日誌。

第二,在 postmetadata 區域,移除 <span style="BACKGROUND-COLOR: #edf3de"><?php comments_popup_link(); ?> 函數和前面的
標籤。不要移除整個 <span style="BACKGROUND-COLOR: #edf3de">postmetadata

移除了留言鏈接函數是由於在單篇日誌查看形式下留言鏈接函數是不起作用,所以要在 <span style="BACKGROUND-COLOR: #edf3de">singel.php 文件中移除它。只要管理員可見的編輯鏈接,在 BR 標籤的左邊。你不想跳過一行才幹看到這個原本你能夠在右邊看到鏈接?這就是移除 BR 標籤的緣由。

第三,用以下代碼取代 <span style="BACKGROUND-COLOR: #edf3de"><?php posts_nav_link(); ?>

<span style="BACKGROUND-COLOR: #edf3de"><?php previous_post_link(』? %link』) ?> <?php next_post_link(』 %link ?』) ?>

在前面,存檔,分類和搜索頁面,我們運用 <span style="BACKGROUND-COLOR: #edf3de">posts_nav_link() 函數去調用後一頁前一頁的鏈接。關於查看單一日誌的頁面,它是沒有後一頁和前一頁鏈接的,我們能夠運用 previous_post_link()<span style="BACKGROUND-COLOR: #edf3de">next_post_link() 函數去調用前一篇日誌和後一篇日誌的鏈接。

保管 <span style="BACKGROUND-COLOR: #edf3de">single.php 文件,到某篇日誌下查看在導航區域的不同。

課程回憶

  • 創立了四個新的文件或者或者子模板:archive.php,search.php,page.php 和 single.php 。
  • <span style="BACKGROUND-COLOR: #edf3de">archive.php<span style="BACKGROUND-COLOR: #edf3de">search.php 模板文件是相同的。
  • Pages(和日誌不同) 是沒有分類的,他們同樣沒有後一頁前一頁的鏈接。
  • <span style="BACKGROUND-COLOR: #edf3de">Single.php 不會顯現留言鏈接 (被 <span style="BACKGROUND-COLOR: #edf3de">comments_popup_link() 函數調用) 並且他不用 <span style="BACKGROUND-COLOR: #edf3de">posts_nav_link() 去調用導航鏈接。