2011-05-07 24 views
0

我想要一個WordPress插件返回一些自定義json數據,當一個特定的參數通過URL傳遞。問題是我無法找到阻止它顯示任何內容的方法。我想剝離任何顯示,只顯示我的函數返回的json數據。脫衣WordPress的顯示(頁眉,頁腳和所有內容)顯示一個json字符串

例如:「http://mywebsite.com/mypage.php」將返回我的常規WordPress頁面。

但「http://mywebsite.com/mypage.php?api=1」只會返回從觸發函數返回的json數據(並刪除任何默認顯示)。

有沒有辦法做到這一點?

我的目的是讓這個插件返回一些json數據,並像API一樣生活在我的插件中。

感謝

+0

我沒有嘗試,但我覺得這是 Eduplessis 2012-03-02 15:26:33

回答

1

創建一個名爲模板jsonpage.php 使用這個模板爲您的網頁

if ($_REQUEST['api']) { 
    $data = array(); 
    header('Content-type: application/json'); 
    return json_encode($data); 
} else { 
    // show header, page content, etc. 
} 
+0

嗨,謝謝,但我正在尋找一個更簡單的解決方案,無需觸摸任何模板,它只會通過插件工作。這樣它可以處理任何主題/模板,而不必更改任何主題文件。 – kire 2011-05-07 19:06:49

+0

你好,你找到了你的問題的答案 - 我也需要知道! – user505988 2011-05-20 18:30:17

+0

你看過動作鉤子「parse_request」WP-> parse_request()(wp-includes/classes.php中WP類的一部分)將URL解析爲查詢規範。下面是它用於執行此操作的步驟的摘要: 1.將GET變量部分跳出URL(即URL中的「?」之後的任何內容)。 2.通過調用$ wp_rewrite-> wp_rewrite_rules()獲取當前有效的重寫規則。3.按順序搜索重寫規則,直至找到重寫規則和永久鏈接之間的匹配。 4.獲取當前有效的查詢變量列表。 – user515663 2011-05-27 19:37:13