2011-07-11 58 views
4

這有點奇怪,我使用「update_post_meta」來更新Wordpress中的自定義字段。當我運行update_post_meta($ post_id,'Test_Field','測試值');沒有問題的自定義字段更新,但是當我使用一個字符串值,它不更新:WordPress的update_post_meta不更新動態值

$test_value = "Test"; 
echo $test_value; // No problem here 
echo $post_id; // No problem here 
update_post_meta($post_id, 'Test_Field', $test_value); 

謝謝非常提前太多的幫助

斯圖

+0

雙引號解決了它,但任何人都知道爲什麼? update_post_meta(「$ page_id」,「Test_Field」,「$ test_value」); – Stuart

+0

你怎麼分配$ post_id?只是猜測 - 坦率地說,一切看起來都很好。 – Bosworth99

回答

3

嘗試使用類型轉換變量。試試這個:

update_post_meta((int) $post_id, 'Test_Field', (string) $test_value); 
1

你的第一個例子中使用$ POST_ID和解決方案$ page_id。這是一個錯字嗎?

+0

是錯字。但很好發現。 – Stuart

0

這聽起來很奇怪,但是,meta_key名稱必須與輸入字段名。

update_post_meta($post_id, 'top_image', $_POST['top_image']);