2010-04-28 95 views
1

我剛剛關注了Wordpress的this example,並且我已經在Post界面中成功添加了一個額外的Meta Box,並且該值存儲在數據庫中。如何從自定義創建的元框中返回值?

現在我的問題是,我如何檢索和顯示這個元框的內容?

我想下面的代碼:

$intro = get_post_meta($post->ID, 'post_intro', true); 
    echo $intro; 

,但我得到縹緲。我究竟做錯了什麼?

雖然我在這裏,有沒有人知道我是否可以將這個額外的元框放在WordPress的發佈頁面的默認文本框之上?

回答

4

是你的循環內的代碼片段?如果是這樣,則使用get_the_ID()而不是$post->ID

應該看看這個:

$intro = get_post_meta(get_the_ID(), 'post_intro', true); 
echo $intro; 

如果你需要得到您的環路外的元數據做到這一點:因爲你要全球化

global $post; 
$intro = get_post_meta($post->ID, 'post_intro', true); 
echo $intro; 

你得到什麼的原因是$ post變量,如果你想訪問它。除非你別無選擇,否則總是使用第一種方法。如果您嘗試使用元數據進行頁面模板請說明,因爲在這種情況下,我有更好的解決方案來處理元數據。

祝你好運!

+0

RobertWHurst是現貨。至於在默認的可視化編輯器上面添加額外的元框,您可以使用鉤子來完成。參考Adam Brown的WordPress掛鉤/過濾列表:http://adambrown.info/p/wp_hooks/ – hsatterwhite 2010-04-29 11:48:49

+0

感謝Robert。是的,我在頁面模板中使用它。一篇文章列表,以及正常的page.php和single.php。 – Steven 2010-04-29 16:44:36

+0

@Steven其實我的意思是自定義頁面模板,抱歉不清楚。上面的方法在page.php和single.php中可以正常工作,因爲這些是標準模板文件。如果您對我的意思很感興趣,請查看Chris Coyer在CSS Tricks上的這篇文章。 http://css-tricks.com/video-screencasts/41-wordpress-as-a-cms/ – 2010-04-29 18:02:07

相關問題