2016-08-14 61 views
0

我想在WP-API中按類別搜索帖子。按類別搜索WordPress WP-API

我知道我可以通過屬性類別搜索帖子或過濾[貓]。

但帖子包含多個類別。

我試圖尋找這樣的:

{host}/wp-json/wp/v2/posts?categories=69&filter[cat]=[228,246,237]&per_page=50 

{host}/wp-json/wp/v2/posts?categories=69&filter[cat]=228&filter[cat]=246&filter[cat]=237&per_page=50 

{host}/wp-json/wp/v2/posts?categories=69&categories=246&categories=237&categories=228 

這對我沒有工作。它導致搜索查找最後一個屬性。

任何想法?

這是JSON響應的結構

{ 
    "id": 9333, 
    "date": "2016-08-02T14:17:01", 
    "date_gmt": "2016-08-02T12:17:01", 
    "guid": { 
     "rendered": "{post}/?p=9333" 
    }, 
    "modified": "2016-08-03T08:50:35", 
    "modified_gmt": "2016-08-03T06:50:35", 
    "slug": "{post}", 
    "type": "post", 
    "link": "{host}/{post}/", 
    "title": { 
     "rendered": "{post}" 
    }, 
    "content": { 
     "rendered": "{post}" 
    }, 
    "excerpt": { 
     "rendered": "{post}" 
    }, 
    "author": 3, 
    "featured_media": 0, 
    "comment_status": "closed", 
    "ping_status": "closed", 
    "sticky": false, 
    "format": "standard", 
    "categories": [ 
     228, 
     237, 
     207, 
     217, 
     246, 
     231, 
     69, 
     221, 
     270, 
     244 
    ], 
    "tags": [], 
    "_links": [] 
    } 

謝謝!

+0

更改爲英語語言 - 並在代碼中包裝代碼 – dbmitch

回答

0

如果您想從多個類別中獲取帖子,那麼根據您的需求,很少有解決方案。

在當你想從與ID = 1或類別與ID = 2使用下列URL類別的職位情況:

http://localhost/lifelog/wp-json/wp/v2/posts?filter[cat]=1,2 

或:

http://localhost/lifelog/wp-json/wp/v2/posts?categories=1,2 

對於情況下,當你想從與ID = 1和範疇ID = 2類別獲得職位,你可以使用:

http://localhost/lifelog/wp-json/wp/v2/posts?filter[category__and][]=1&filter[category__and][]=2 

但 - 一些過濾器值u篩選器陣列中的sed需要使用edit_posts特權進行身份驗證的用戶。

幸運的是,還有一個更簡單的解決方案 - WordPress的支持像鏈接:

http://example.com/category/test1+test2/ 

在上述網址你會得到被分配到TEST1和TEST2類別的職位列表。和REST API中可以實現與以下網址相同的行爲:

http://localhost/lifelog/wp-json/wp/v2/posts?filter[category_name]=test1%2Btest2 

請記住,你必須更換+標誌爲%2B

+0

我需要獲得ID = 1和ID = 2等職位...但過濾器[category__and] [] = 1&filter [category__and] [] = 2不適用於我 – ZizouJd

+0

正如我寫的「但 - 過濾器數組中使用的一些過濾器值需要具有edit_posts特權的經過驗證的用戶。」 - 這就是爲什麼我提出了一個帶有加號的解決方案。 –

+0

好的,完美的,帶有加號的解決方案適用於我。現在,我該如何處理有空格的字符串?示例= filter [category_name] = test 1%2Btest 2 – ZizouJd