不好意思,打擾一下,以下文字與回答無關(guān)!
成都創(chuàng)新互聯(lián)公司專注于冷水江企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站開發(fā),商城建設(shè)。冷水江網(wǎng)站建設(shè)公司,為冷水江等地區(qū)提供建站服務(wù)。全流程定制網(wǎng)站,專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,成都創(chuàng)新互聯(lián)公司專業(yè)和態(tài)度為您提供的服務(wù)
下一篇:WP Theme 教程 #5:主循環(huán)
調(diào)用你博客日志的主循環(huán)(The Loop)是 WordPress 中最重要的 PHP 代碼集。這也是關(guān)于創(chuàng)建 WordPress 主題系列教程的第五篇。在繼續(xù)學(xué)習(xí)之前,我們先復(fù)習(xí)下到目前為止學(xué)
到了什么?
到目前為止,你已經(jīng)學(xué)到::
規(guī)則,結(jié)構(gòu)和 WordPress 主題的層式結(jié)構(gòu)
每個(gè)頁面有哪些部分組成
如何安裝你的主題
如何調(diào)用博客的標(biāo)題和把它做成一個(gè)鏈接
如何調(diào)用博客的描述和如何把 header 和其他內(nèi)容分開
現(xiàn)在讓我們開始第五篇:
現(xiàn)在已經(jīng)打開了 Xampp,“tutorial”主題文件夾,瀏覽器中打開 以及在文本編輯器中打開 index.php 文件。
下面應(yīng)該是在你這時(shí)候 index.php 文件中的內(nèi)容:
記住,為了學(xué)習(xí)這些代碼,請(qǐng)手工輸入所有的東西,而不是拷貝和粘貼。
第1步
在 header DIV 標(biāo)簽下添加一個(gè) DIV 標(biāo)簽,并給它的 ID 賦值為“container”,如下:
div id=”container”
/div
這個(gè) DIV 標(biāo)簽是用來干什么的呢?它是用于把你的內(nèi)容和它下面的所有東東都區(qū)分開,比如 sidebar 和 footer 這些東東。
第2步
在 Container 的 DIV 標(biāo)簽中添加如下代碼:試著完全手工輸入這些代碼,如果遇到錯(cuò)誤,重新再輸入一遍。
?php if(have_posts()) : ??php while(have_posts()) : the_post(); ?
?php endwhile; ?
?php endif; ?
手工輸入代碼可以讓你更容易知道每個(gè)代碼集是干什么的。你剛才輸入的是 WordPress 中的主循環(huán)(The Loop)。在我解釋這些代碼作用之前,你的 index.php 應(yīng)該是這樣了:
注意我縮進(jìn)了 Container DIV 中的每一行。這是為了更好的組織代碼。僅僅輸入代碼是不夠的,我們需要組織它們。對(duì)于縮進(jìn),使用 tab 健而不是空格鍵。
剛才發(fā)生了什么?
if(have_posts()) – 檢查你的博客是否有日志。
while(have_posts()) – 如果你有,當(dāng)你有日志的時(shí)候,執(zhí)行 the_post() 這個(gè)函數(shù)。
the_post() – 調(diào)用具體日志來顯示。
endwhile; – 遵照規(guī)則 #1,這里用于關(guān)閉 while()
endif; – 關(guān)閉 if()
注釋:并不是所有的代碼都需要兩部分,為了打開和關(guān)閉自己。有些能夠自我關(guān)閉,這就解釋了 have_posts() 和 the_post(); 這兩個(gè)函數(shù)。因?yàn)?the_post(); 在 if() 和
while() 的外面,它需要分號(hào)去結(jié)束或者關(guān)閉自己。
第3步
在前面的課程中,你學(xué)習(xí)了使用 bloginfo(’name’) 去調(diào)用你的博客的標(biāo)題?,F(xiàn)在你將學(xué)習(xí)在主循環(huán)(The Loop)中如何調(diào)用日志標(biāo)題。
在 the_post(); ? 的后面和 ?php endwhile; ? 的前面輸入 ?php the_title(); ?
保存 index.php 文件,刷新你的瀏覽器,你應(yīng)該看到在你博客描述的下方出現(xiàn) Hello World ,默認(rèn)情況下,你的博客只有一篇日志。而我的測(cè)試的博客有多篇日志,所以我有多
個(gè)日志標(biāo)題。而且因?yàn)槲宜玫娜罩緲?biāo)題是一樣的,并我沒有進(jìn)行組織整理他們,所以它們看起來像很長的一行 Hello World.
第4步
把日志標(biāo)題轉(zhuǎn)變成日志標(biāo)題鏈接。還記得你怎樣吧你博客的標(biāo)題轉(zhuǎn)變成一個(gè)鏈接呢?是在?php the_title(); ? 兩邊增加 a href=”#” 和 /a。
保存并刷新你的瀏覽器?,F(xiàn)在你的標(biāo)題變成了鏈接了,但是它們并沒有指向哪里。為了使得每個(gè)標(biāo)題都能指向正確的日志,你需要把 # 替換為 the_permalink()。
a href=”?php the_permalink(); ?“?php the_title(); ?/a
the_permalink() 是用來調(diào)用每篇日志地址的 PHP 函數(shù)。保存并刷新你的瀏覽器。如果你只有一個(gè) Hello World 標(biāo)題,把鼠標(biāo)移到鏈接上面,觀察你的瀏覽器底部的狀態(tài)欄,他
不再是 。
如果你有不止一個(gè)的標(biāo)題鏈接,你將看到每個(gè)鏈接會(huì)鏈到不同的日志或者網(wǎng)頁。但是我們的日志標(biāo)題依然在同一行上面。為了分開它們,在你的鏈接代碼兩邊添加 h2 和 /h2
標(biāo)簽。
h2a href=”?php the_permalink(); ?”?php the_title(); ?/a/h2
記住 H1 用作你的博客的標(biāo)題,那是你網(wǎng)頁的標(biāo)題。H2 被用作子標(biāo)題?,F(xiàn)在你的日志標(biāo)題鏈接是子標(biāo)題了,每一個(gè)都是一行。保存 index.php 文件并刷新你的瀏覽器,觀察更改
的結(jié)果。
這一篇到此為止。你的 index.php 文件現(xiàn)在應(yīng)該是::
注釋:如果你還沒有創(chuàng)建一些測(cè)試的日志來測(cè)試你的主題,那么請(qǐng)到管理界面,點(diǎn)擊 Write 按鈕,并確認(rèn)你是在 Write Post 頁面下,寫一篇日志并重復(fù)幾次。你可以像我一樣給
它們唯一的標(biāo)題 Hello World。
下一篇:WP Theme 教程 #5b:日志內(nèi)容
在這篇中,我們將解決真正的東西。如何展示你博客的內(nèi)容?然后你將看到更多的 DIV 標(biāo)簽,用于把博客的內(nèi)容和在上一篇中創(chuàng)建的日志標(biāo)題區(qū)分開。
(注意:上一篇課程是非常,非常重要的。如果你不是完全明白我上篇所講的,你需要去重新看一篇和問我問題直到搞明白為止。)
下面開始這篇課程。打開 Xampp ,打開 “tutorial”主題文件夾,打開瀏覽器,輸入地址:,最后用文本編輯器打開 index.php。
第1步
在日志標(biāo)題代碼下面輸入 ?php the_content(); ?。
保存并刷新瀏覽器,你應(yīng)該在日志標(biāo)題下面看到了一些文本。
剛才發(fā)生什么了?
你使用了 PHP 函數(shù) the_content() 調(diào)用了 日志的內(nèi)容?,F(xiàn)在,日志的內(nèi)容只是一長行的文本,一直到窗口的右邊,因?yàn)槟氵€沒有樣式化它。還記得 style.css 這個(gè)文件嗎?我們以后用它來控制所用元素顯示的。
上一篇,我教你輸入多篇測(cè)試的日志以便可以看到多篇日志的列出的樣子。如果你還沒有做,那現(xiàn)在就去輸入吧,然后返回首頁,應(yīng)該看到多篇日志是這樣子的:
繼續(xù)……
返回你的瀏覽器,點(diǎn)擊查看選擇頁面源代碼。就會(huì)彈出一個(gè)源代碼窗口,如果你使用的是 Internet Explorer,那么彈出的是記事本。
我使用的是 FireFox瀏覽器,下面是在 FireFox 中顯示的樣子:
注意到 index.php 文件和源代碼之間的區(qū)別了嗎?你所有的文本,圖像和其他附加的東西,所有在那個(gè)窗口或者記事本中的東西都是被這個(gè)函數(shù) the_content() 調(diào)用來的。是不是很有用?不依賴 blogging 軟件和具體的 WordPress 模板系統(tǒng),你應(yīng)該自己對(duì)這些文本和圖片進(jìn)行編碼。
還有,有沒有注意到我圈出的開啟和關(guān)閉的P標(biāo)簽。他們都沒有在 index.php 文件中出現(xiàn),但是他們?cè)谠创a中出現(xiàn)了。
P 標(biāo)簽,為什么和如何使用?
為什么 – 當(dāng)你輸入你的日志的時(shí)候,每次你跳過一行就是一個(gè)段落,你需要一個(gè)方法去展示?每個(gè)段落會(huì)在 P (段落,paragraph)標(biāo)簽之間。那就是你能夠在你的段落之間有行距的原因。如何 – 非常容易,WordPress 模板系統(tǒng)會(huì)幫你產(chǎn)生 P 標(biāo)簽。
第2步
給 the_content() 兩邊添加 DIV 標(biāo)簽并給該 DIV 標(biāo)簽附上class=”entry”屬性,如下:
div class=”entry”
/div
你現(xiàn)在的 index.php 文件應(yīng)該是:
保存并刷新你的瀏覽器,你再次去查看源代碼,你會(huì)發(fā)現(xiàn)你的每篇日志內(nèi)容都被 class=”entry” 的 DIV 標(biāo)簽給圍住。
為什么?
第一個(gè)原因是,你現(xiàn)在知道日志題目哪里結(jié)束還有日志內(nèi)容哪里開始。第一個(gè)原因是這是為了能讓 style.css 文件能進(jìn)行樣式話準(zhǔn)備的。如果你愿意,你可以樣式你的日志的內(nèi)容而不影響其他別的東西。
id 和 class之間有什么區(qū)別呢?
到目前為止,對(duì)于每個(gè) DIV 標(biāo)簽,你可以用 id 去命名它。記得 id=”header”嗎?那么有什么不同呢?id 是唯一的而class不是。如果你從頭到尾瀏覽你的源代碼,你會(huì)發(fā)現(xiàn)只有一個(gè) id=”header” 和一個(gè) id=”container”,但是有多個(gè) class=”entry”。
那么 header 和 container 能用 class 去取代 id 嗎?完全可以。
牢記這一點(diǎn),你不能重復(fù)任何 id。比如,你不能在同一頁面上有兩個(gè) id=”header”。當(dāng)你想一遍又一遍重新利用一些東西如日志的題目,那么請(qǐng)使用 class。
第3步:
用一個(gè) DIV 標(biāo)簽把日志的標(biāo)題和內(nèi)容一起圍住。并把這個(gè) DIV 標(biāo)簽命名為:class=”post”。
div class=”post”
/div
(你可以按照你自己的想法把 class 和 ID 的名字命名成你想要的名字,比如你最喜歡的食物,但是 post 和 entry 更簡潔,簡單并更容易記,對(duì)吧?)
現(xiàn)在你的 index.php 文件為:
這個(gè)是經(jīng)過縮進(jìn)整理后的版本:
我使用 tab 健而不是空格鍵在 index.php 文件中產(chǎn)生縮進(jìn)的。為什么進(jìn)行組織呢?不像我的屏幕截圖上一樣,你的代碼不會(huì)有紅色或者綠色的高亮顯示,你需要有個(gè)能夠跟蹤你的代碼的方法,通過縮進(jìn),使你更容易知道哪個(gè) /div 是結(jié)束哪個(gè) div。
保存并刷新瀏覽器,然后查看源代碼中的代碼。
為什么你要添加另外一個(gè) DIV 標(biāo)簽去圍住日志標(biāo)題和日志內(nèi)容?
增加這個(gè) DIV class=”entry” 去把日志標(biāo)題和日志內(nèi)容區(qū)分開。而這個(gè)div class=”post”是吧你的日志和其他內(nèi)容區(qū)分開。
這就是這篇教程的所有內(nèi)容,可能需要更多時(shí)間去消化,所以有問題請(qǐng)務(wù)必給我留言,下一篇我們將對(duì)付日期(date),分類(categories)和評(píng)論(comments)。
如果你看到我教程中錯(cuò)誤或者不一致的地方,請(qǐng)盡快告訴我以便我能立刻改掉,另外,到目前為止,你覺得我的課程怎么樣?是否需要我講的更具體些,或者它們太長了?
上一篇:WP Theme 教程 #5c:日志元數(shù)據(jù)
這一篇我們開始解決日志的元數(shù)據(jù)(Postmetadata):日期(date),分類(categories),作者(author),評(píng)論數(shù)(number of comments),以及其他隸屬于日志的雜項(xiàng)信息。
我們現(xiàn)在在教程 5C,你可能已經(jīng)注意到我將會(huì)把教程歸納成更大塊(更少的步驟)。在開始之前,請(qǐng)打開 Xampp,主題文件夾,瀏覽器以及 index.php 文件。
先讓我們復(fù)習(xí)下,現(xiàn)在的 index.php 文件應(yīng)該有下面這些代碼了:
第1步
把postmetadata.txt 中的代碼拷貝到 ?php the_content(); ? 下面。(注意:在這部分,你只需要拷貝和粘貼。當(dāng)我把 WordPress 主題放在一起的時(shí)候,我也只是拷貝和粘貼這部分代碼。再重復(fù)一次,你不需要完全理解它,知道每部分代碼集干什么已經(jīng)足夠了。
下面的這個(gè)屏幕截圖為了適應(yīng)日志的大小裁剪了一部分。注意日志元數(shù)據(jù)代碼的組織和位置。不要把你的代碼像下面的截圖一樣裁剪到 1 Comment 。
保存,刷新你的瀏覽器,你應(yīng)該看到:
你同樣可以通過查看源代碼來看日志元數(shù)據(jù)是怎樣的?還記得怎么樣查看源代碼嗎?在瀏覽器的菜單:查看 頁面源代碼。
解釋:
p class=”postmetadata” 和 /p – 所有的日志元數(shù)據(jù)都在一個(gè) class=”postmetadata” 的段落標(biāo)簽中,因?yàn)槲蚁氚讶罩驹獢?shù)據(jù)和日志內(nèi)容區(qū)分開。如果沒有段落標(biāo)簽,日志元數(shù)據(jù)信息將在日志內(nèi)容結(jié)束的地方繼續(xù),這將沒有任何間距去區(qū)別內(nèi)容和日志元數(shù)據(jù)。
?php _e(’Filed under:’); ? – : 是調(diào)用冒號(hào)“:”的代碼;
把Filed under:放入?php _e(’ ‘); ?中不是必須的。你可以簡單輸入 Filed under:
?php the_category(’, ‘) ? – the_category() 是用來調(diào)用你當(dāng)前日志的在的所有類別的 PHP 函數(shù)。如果你把 Filed under: 和 the_category() 放在一起,你可以得到:Filed under: Name of category 1, Name of category 2。the_category() 中的逗號(hào)是用來區(qū)分類別名。返回日志元數(shù)據(jù)的屏幕截圖,你可以注意到在類別連接中的逗號(hào)。
?php _e(’by’); ? – 和 Filed under:一樣。如果你創(chuàng)建私人用的的主題, by 外面的 _e() 不是必須的。_e() 是用來創(chuàng)建可以翻譯的主題,如果主題被來自不同國家的上百人使用的話,這是非常重要的。如果你是創(chuàng)建公共使用的主題,最后加上 _e() 以便你的主題可翻譯化。
?php the_author(); ? – 它是輸出當(dāng)前日志作者的名字。
br / – 如果你想要一個(gè)空行,又不想用段落標(biāo)簽來產(chǎn)生行間距,使用 BR。注意斜線 / 。這是能自我關(guān)閉的標(biāo)簽。
?php comments_popup_link(’No Comments ?’, ‘1 Comment ?’, ‘% Comments ?’); ? – 當(dāng)彈出留言的功能激活的話,comments_popup_link() 調(diào)用一個(gè)彈出的留言窗口。如果沒有激活,comments_popup_link() 則只是簡單的顯示留言列表。No Comments ? 是在沒有留言的時(shí)候顯示的。1 Comment ? 是用于當(dāng)你剛好有1條留言時(shí)候。% Comments 187; 是用于當(dāng)你有多于一條留言的時(shí)候。比如:8 Comments ?。百分號(hào) % 用來顯示數(shù)字。? 是用來顯示一個(gè)雙層箭頭 ?。
?php edit_post_link(’Edit’, ‘ | ‘, ”); ? – 這個(gè)只有當(dāng)你以管理員身份登錄的的時(shí)候(譯者注釋:以編輯者,Editor登錄也可以)才可見。 edit_post_link() 只是簡單為你顯示一個(gè)可以用來編輯當(dāng)前日志的編輯鏈接,這樣可以讓你不必去去管理界面搜尋該日志而能直接編輯。edit_post_link() 有三個(gè)參數(shù)。第一個(gè)是用來確定哪個(gè)詞你將用在編輯鏈接的鏈接標(biāo)題。如果你使用 Edit post,那么將顯示 Edit post 而不是 Edit。第二個(gè)參數(shù)是用來顯示在鏈接前面的字符,在這里是豎線 |,代碼就是124;。第三個(gè)參數(shù)是用于顯示在編輯鏈接后面的字符,在這里沒有使用。
登錄 WordPress 之后,再返回到首頁就可以看到“Edit”的鏈接和一條豎線。
下一篇:WP Theme 教程 #5d:Else,日志 ID,鏈接標(biāo)題
這篇課程將討論其他3個(gè)可以增加到日志中的元素。Else,post ID, 和 鏈接的 title 值。盡管它們是可選的,但是你幾乎可以在我每一個(gè)免費(fèi)的主題中都能找到。
開始之前,不要忘記啟動(dòng) Xampp。
第1步
在 ?php endwhile; ? 的下面輸入以下代碼:
?php else : ?
div class=”post”
h2?php _e(’Not Found’); ?/h2
/div
大致如下:
保存,但是你應(yīng)該注意不到任何變化。我們應(yī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)你的博客完全沒有日志的時(shí)候執(zhí)行的。 想一下 while() 和 endwhile; 應(yīng)該嵌套在 if() 和 else :之間。 這就是為什么 ?php else : ? 應(yīng)該在 ?php endwhile; ? 之后。
現(xiàn)在你知道什么是 else,當(dāng)你沒有任何日志或者當(dāng)它找不到任何日志的時(shí)候,你想告訴 WordPress 怎么處理呢?讓 WordPress 顯示錯(cuò)誤信息 Not Found,或者其他任何你想要的東西。你可以下載我的任一款主題,看一下它的 index.php文件怎么寫的。
在上面的例子中,Not Found 錯(cuò)誤信息是在 ?php _e(’ ‘); ? 之中。如我上一篇所說,這不是必需的。
整個(gè)信息和代碼 Not Found 外面有 h2 和 /h2。這個(gè)同樣也不是必需的。你可以簡單使用:
div class=”post”
Not Found
/div
但是,給這個(gè)錯(cuò)誤信息使用上 h2 (子標(biāo)題)標(biāo)簽?zāi)軌蚴顾黠@,讓你訪問者注意到這個(gè)頁面上沒有任何東西。
那么 div class=”post” 和 /div 用來做什么的呢?恩,你肯定不想你的錯(cuò)誤信息在“茫茫蠻荒之地”之間滯留,對(duì)不?你用 div class=”post” 和 /div 標(biāo)簽圍住每篇日志。所以同樣,盡管是錯(cuò)誤信息不是真正的內(nèi)容,但是它其實(shí)是像日志的文本。
第2步
增加 id=”post-?php the_ID(); ?” 到 div class=”post”
保存,然后刷新你的瀏覽器。然后 查看 頁面源代碼。你現(xiàn)在會(huì)發(fā)現(xiàn)現(xiàn)在每篇日志都附加上了一個(gè)數(shù)字或者說是日志 ID。the_ID() 只是調(diào)用每篇日志的 ID;僅此而已。
為什么使用它呢?這是用來定制個(gè)別的日志的面貌。后面,當(dāng)你使用 style.css 文件去告訴你的主題日志將看起像怎么樣。如果通過給每篇日志附加唯一的 ID,你就可以針對(duì)單獨(dú)的一篇日志,使得它和其他日志看起來不一樣。如果沒有 ID,你將沒有辦法通過 style.css 文件使它和其他日志不一樣。
你如何同時(shí)把 class 和 id 賦給同一個(gè) DIV 標(biāo)簽?zāi)??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步
增加 title=”?php the_title(); ?” 到日志的標(biāo)題鏈接。
保存并刷新瀏覽器。然后再去查看你的源代碼。 當(dāng)查看它的源代碼,查找任何日志的標(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 作為描述。
現(xiàn)在,返回你的網(wǎng)頁。把你光標(biāo)移到任一一篇日志標(biāo)題連接,描述信息將會(huì)彈出,那就是剛剛增加的。增加描述到你的鏈接是非常有用的,當(dāng)你其他站點(diǎn)需要掃描你的博客的時(shí)候。如 Technorati點(diǎn)抗 ,每次你發(fā)表日志的時(shí)候,WordPress 通知 Technorati 和其他網(wǎng)站你的博客已經(jīng)更新了。Technorati 然后就會(huì)來到你的博客,掃描它,并索引得到一個(gè)你日志的摘要,這其中會(huì)包括你鏈接標(biāo)題的描述。
下一篇將會(huì)涉及到后一頁和前一頁的導(dǎo)航鏈接。
在絕大多數(shù)的 WordPress blog 的底部中,都會(huì)有 Next Page 或者 Previous Page 這些導(dǎo)航鏈接。你可以通過 WordPress 的模板系統(tǒng)中的 posts_nav_link() 這個(gè)函數(shù)調(diào)用這些鏈接。在這篇中,只有一個(gè)步驟!
真的需要我再次告訴你一次去打開 Xampp,主題文件夾,瀏覽器和 index.php 文件嗎?
第1步(只有一步)
在 ?php endwhile; ? 和 ?php else : ?之間添加如下代碼:
div class=”navigation”
?php posts_nav_link(); ?
/div
注意到上面截圖中的縮進(jìn),我一般使用 tab 健產(chǎn)生縮進(jìn)來組織代碼。
div class=”navigation” – 開始一個(gè)名字為 navigation 的 DIV 標(biāo)簽來圍住后一頁和前一頁的鏈接區(qū)域。
?php – 開始 PHP 代碼
posts_nav_link() – 調(diào)用后一頁和前一頁的鏈接。
; – 停止調(diào)用。
? – 結(jié)束 PHP 代碼
/div – 結(jié)束名字為 navigation 的 DIV 標(biāo)簽。
效果如下:
保存并刷新,查看后一頁或者前一頁的鏈接。默認(rèn)情況下,如果你沒有超過10篇日志的話,是不會(huì)顯示導(dǎo)航鏈接。如果你沒有超過10篇日志,依然想看到導(dǎo)航鏈接,登錄到管理界面,選擇 Options Reading,然后把它設(shè)置為比你所有日志少一篇。如,你有6篇日志,就設(shè)置為5。
如何定制化 posts_nav_link():
就像一些在 postmetadata 課程的函數(shù)中,你可以給這個(gè)函數(shù)3個(gè)參數(shù),分別為你想顯示在后一頁和前一頁鏈接的中間,前面和后面的任何字符,如下:
?php posts_nav_link(’in between’,”before’,”after’); ?
第1個(gè)參數(shù)是顯示在后一頁和前一頁鏈接的中間。第2個(gè)參數(shù)顯示在前面。第3個(gè)參數(shù)顯示在后面。
這里是一個(gè)定制化 posts_nav_link() 的例子:
下一篇:WP Theme 教程 #6:側(cè)邊欄
是否你已經(jīng)很期待學(xué)習(xí)側(cè)邊欄(Sidebar)了呢?可能第一眼,感覺側(cè)邊欄很難,其實(shí)它根本不難,一旦你掌握了它的結(jié)構(gòu),就能很快編碼和樣式化它。
在開始側(cè)邊欄之前,這是現(xiàn)在 index.php 文件的樣子。
不要忘記打開 Xampp……
第1步
讓我們創(chuàng)建一個(gè)名字為 sidebar 的 DIV 標(biāo)簽用來圍住側(cè)邊欄中的所有東西。在 container 的后面和 /body 標(biāo)簽的前面輸入以下代碼:
div class=”sidebar”
/div
第2步
在新的 sidebar 的 DIV 標(biāo)簽中創(chuàng)建一個(gè)新的無序列表。
ul – 開始無序列表
/ul – 結(jié)束無序列表
第3步
增加一個(gè)列表元素(LI)到無序列表(UL)的中間并把一個(gè)子標(biāo)題添加到這個(gè)列表中。
lih2?php _e(’Categories’); ?/h2
/li
注意添加制表符到li 和 /li 標(biāo)簽之前為了組織代碼。
li – 開始列表元素
h2 – 開始子標(biāo)題
?php _e(’Categories’); ? – 輸出字符 Categories
/h2 – 結(jié)束子標(biāo)題
/li – 結(jié)束列表?xiàng)l目
再次重復(fù)一次,如果你只是為自己創(chuàng)建主題,你不需要將 Categories 放入?php e(’ ‘); ?。使用h2Categories/h2 作為你的子標(biāo)題也完全沒有問題。
保存 index.php 文件并刷新你的瀏覽器。你應(yīng)該看到 Categories 子標(biāo)題結(jié)構(gòu)應(yīng)該這樣:
子標(biāo)題前面的小圓點(diǎn)指明這個(gè)子標(biāo)題是在一個(gè)列表元素中(LI)。如果你的無序列表(UL)有兩個(gè)列表元素,那么將有兩個(gè)小點(diǎn)。
第4步
在列表?xiàng)l目中添加下面代碼
ul
?php wp_list_cats(’sort_column=nameoptioncount=1hierarchical=0′); ?
/ul
這里是上面代碼的解釋:
ul – 開始另一個(gè)無序列表
?php wp_list_cats(); ? – 調(diào)用分類鏈接列表
/ul – 結(jié)束無序列表
保存并刷新瀏覽器。下面是我的分類鏈接列表的樣子:
你默認(rèn)的分類是 Uncategorized。如果你沒有把日志發(fā)布到多個(gè)分類下面,那么你的列表鏈接列表應(yīng)該是只有一個(gè)鏈接 Uncategorized。
更進(jìn)一步的解釋:
sort_column=name – 把分類按字符順序排列
optioncount=1 – 顯示在每個(gè)分類下面的日志數(shù)
hierarchial=0 – 不把子分類放到子列表元素中,這就解釋了為什么我的 子分類 鏈接是列在列表中第一級(jí)。
– 每次你增加另一個(gè)參數(shù)的時(shí)候,你需在它之前要輸入 用來把和現(xiàn)有的參數(shù)區(qū)分開。如 在 sort_column 和 optioncount之間。
為什么你不把 ?php wp_list_cats(); ? 放入li 和 /li 標(biāo)簽中呢?
當(dāng)你使用 wp_list_cats() 這個(gè)函數(shù)調(diào)用鏈接列表函數(shù)的時(shí)候,它會(huì)自動(dòng)附上一組 li 和 /li(列表?xiàng)l目)標(biāo)簽在每個(gè)鏈接的左右。查看頁面源代碼;你可以看到每個(gè)連接的周圍都已經(jīng)有一組列表元素的標(biāo)簽。
當(dāng)你處理側(cè)邊欄,無序列表和列表勻速的時(shí)候,這是非常重要去記得:
規(guī)則 #1:按順序關(guān)閉所有標(biāo)簽。
下一篇:WP Theme 教程 #6b:頁面鏈接列表