2012-06-27 144 views
1

我正在編寫一個插件,通過單擊超鏈接(jQuery)來更新wordpress數據庫。我學會了這樣做的方式讓我從PHP類更新數據庫。從PHP類中獲取帖子ID

我能夠捕獲和利用更新我的表的user_id:

$current_user = wp_get_current_user(); 
$user_id = $current_user->ID; 

我能夠捕獲和利用更新我的表blog_id:

global $blog_id; 

不過,我米無法捕獲和更新我的表與post_id。我已經試過:

global $wp_query; 
$post = $wp_query->post; 
$post_id = $post->ID; 

這並不工作 - $ POST_ID返回0。事實上,在這個類這一點,is_single甚至返回FALSE。我卡住了,真的很感激一些幫助。

謝謝!

回答

2

對象屬性$post不存在,除非你在循環(啊,成爲一個WordPress用戶)。而應使用對象屬性$posts

參考:Wordpress Codex

+0

我很欣賞的答覆。你能否更具體一些?我仍然處於虧損狀態。你只是說要取代$ post = $ wp_query-> post;用$ post = $ wp_query-> posts ;?這不起作用,所以我假設我錯過了一個步驟。 – Michael

+0

以下是它的解決方法:global $ query_string; $ posts = get_posts($ query_string); foreach($ posts as $ post){ $ post_id = $ post-> ID; } – Michael

+0

良好的工作,抱歉,我昨晚沒有看到您的評論。 – Lusitanian

0

必須使用$posts代替$post

+0

我很欣賞這個答覆。你能否更具體一些?我仍然處於虧損狀態。你只是說要取代$ post = $ wp_query-> post;用$ post = $ wp_query-> posts ;?這不起作用,所以我假設我錯過了一個步驟。 – Michael