用Shortcode新增「列出特定條件的文章列表」功能 - 部落格

Sandy avatar
By Sandy
at 2009-08-23T12:23

Table of Contents


分享~

http://mygeotravel.org/hcc/blog/2009/08/23/3798.html

最近想在分類索引的文章中,列出某些分類(或標籤)的文章列表。但是用手動的
太累,未來還要持續更新更累。用外掛也沒找到合適的,過去曾經用過一個「列出
某個目錄文章列表」外掛,不過找不到了。於是我利用Wordpress新增的Shortcode
功能,新增一個功能代碼,可以從文章呼叫 functions.php中所設定的程式,完成
我所需要的功能。

原本我先找到一個簡單的程式寫法(我的普立茲:製作屬於您自己的 Posts Portal
首頁),適合加在模版中,但是搭配不同分類,這樣要建立很多模版。如果利用像我在加
菲貓網站的作法,把參數用網址丟進某個特定頁面也可以,但這樣就不能在每個分類
產生一篇「置頂文」,簡介這個分類內容。

還有一個方法是,把上述程式碼寫進分類簡介的置頂文,然後安裝讓文章也可以執行
PHP程式的外掛。可是那個外掛的留言版有人警告,該程式有可能把你的資料庫毀掉
(驚)!當然也有人說用了很久都沒事,我是不想冒這個險啦。其中有個人留言說,他
現在都用shortcode取代在文章中執行PHP程式。於是我就去搜尋,什麼是shortcode。

原來wordpress在2.5版以後,新增了shortcode的功能。就是在functions.php檔案中定
義一個功能跟代號,然後在文章或頁面中用[功能代號]的方式把功能呼叫出來。這樣就
可以把程式碼寫在functions.php中,然後從文章中呼叫,並把參數丟進程式裡就
可以,安全又好用!

於是在Smashing magazine:Mastering WordPress Shortcodes的文章中,找到篩選特定
條件文章的功能(5. Get posts from WordPress Database with a Shortcode)。原
本的功能中,沒有篩選「標籤」這一項。不過功能中所使用的get_posts函式在
wordpress 2.6之後,已經可以使用所有query_posts的篩選功能。於是參考get_posts
的語法,新增了篩選「標籤」的功能。

未來我在文章中就可以用「分類」和「標籤」為篩選條件,列出特定的文章列表了。

--

All Comments

有人現在可以登入天空嗎?

Edward Lewis avatar
By Edward Lewis
at 2009-08-23T01:26
請問 yam天空現在是不是不能登入阿 有版友的天空帳號 可以順利登入嗎 我試了好幾次 網頁一直顯示系統在維修中耶 有沒有人知道 到底甚麼時候會修好咧..... atatand#34; 謝謝 - ...

圖片外連使用量已達上限

Hedwig avatar
By Hedwig
at 2009-08-23T01:01
我將相簿裡的圖片連到網誌上 結果圖片的地方沒出現圖片 反而出現and#34;圖片外連使用量已達上限and#34; 請問要怎麼解決這個問題? 順便再問一個問題 在網誌的管理後台 有些狀態是and#34;開放and#34;有些狀態是and#34;草稿and#34; 請問這是什麼東西? 要怎麼修改 ...

可用ftp上傳的照片空間?(配合WLW用的…)

Anthony avatar
By Anthony
at 2009-08-22T23:28
借標題問一下 ※ 引述《rent2ez (歡迎一起租體驗!!)》之銘言: : 最近用了新版的Windows live writer : 還不錯… : 只是找圖片空間這一點 有點麻煩 : 很多blog不能直接上傳照片 也不支援外連 : 是否有某個圖檔空間 : 可以支援ftp上傳 且可以外連的? : P ...

噗浪的個人頭像自己改變了?!

Hamiltion avatar
By Hamiltion
at 2009-08-22T15:01
昨天上噗浪時, 發現我的個人頭像自己變了 變成之前設過的那一個。 之後要必須不斷按重新整理頁面, 才會恢復成現在我本來設定的頭像。 請問這是出了什麼問題呢? 應該如何改善? 謝謝 -- - ...

請問怎麼讓邊框加寬??

Elizabeth avatar
By Elizabeth
at 2009-08-22T12:48
大家好 我想請問一下 要怎麼使blogger範本的邊框(就是連結啊~訪客人數啊~最新留言啊那一條)加寬 因為我要放有圖片的網頁連結 但是邊框太窄 圖片會被切掉 所以我想請問有邊框比較寬的範本可以使用嗎??? 他們自己的範本都大同小異耶........ 感謝版友們教學啦~~~~~~ - ...