2016-06-12 34 views
-1

在我的Wordpress設置中,每個職位都有一個職位元meta_key = visitor_tracking_visitor_id,這是後作者ID。WordPress的/ MySQL的 - >獲得職位id與一個給定職位的作者寫的總帖子的數量

我試圖從Wordpress wp_posts表中提取帖子列表,以及針對該給定作者id的status = publish帖子的計數。

wp_posts

ID | POST_TITLE | POST_CONTENT | post_status( 「發佈」 或 「垃圾」)

wp_postmeta

POST_ID(加入與wp_posts'id)| meta_key | meta_value

當meta_key = visitor_tracking_visitor_id的meta_value保持作者id

實施例預期的結果:

| ID | meta_value(作者ID)| count_of_posts_by_that_meta_value |

| 1 | 1234 | 10 |

| 2 | 1234 | 10 |

| 3 | 5678 | 4 |

我知道如何與作者的ID一起拉崗位信息:

 
SELECT `id`, `post_title`, `post_content`, `post_status`, `meta_value` FROM `wp_posts` 
LEFT JOIN wp_postmeta 
ON `id` = `post_id` 
WHERE `post_type` = 'post' AND `post_status` in ('trash','publish') AND `meta_key` = 'visitor_tracking_visitor_id' 

如何將我拉另一場與作者的發表只使用SQL的職位(不含WordPress的功能)的計數?

在此先感謝您的幫助!

+0

在缺少數據集的情況下,預期結果集與巧克力茶壺一樣有用 – Strawberry

回答

0

爲什麼要爲每篇文章中已有的內容創建後期元?剛剛得到這個職位get_the_author_id()作者ID

如果你想從一個作家羅列表帖子的鏈接,在循環中,您可以使用 https://codex.wordpress.org/Function_Reference/the_author_posts_link

要得到作者或網友發帖數,您可以使用 https://codex.wordpress.org/Function_Reference/count_user_posts

+0

嗨,自頂向下,我使用自定義ID,因爲帖子不是以我的網站上的標準方式添加的,每個用戶都有一個WP帳戶。另外,我需要從數據庫中導出數據,而不使用Wordpress功能。它旨在用於使用外部工具進行分析。 – lohaic

+0

出口使用WP Rest API http://wp-api.org/ – topdown

0

無需使用SQL本:

$args = array(
    'meta_key' => 'visitor_tracking_visitor_id', 
    'meta_value_num' => 76, // The "author" ID, 
    'fields' => 'ids', 
); 
$query = new WP_Query($args); 
$count = $query->found_posts; 

瞭解更多關於WP_Query in the Codex