WordPress JSON Rest API (WP API):它是什麼,它是如何工作的,以及它對 WordPress 的未來意味著什麼

已發表: 2015-04-28

不可否認,WordPress 擁有絕對龐大的開發者社區,但事實上絕大多數 WordPress 用戶都不是開發者。 這意味著,雖然開發人員,實際構建 WordPress 本身以及 WordPress 主題、插件等的開發人員更有能力了解 WordPress 的演變以及其持續發展將如何影響未來整個 WordPress 生態圈。

我喜歡認為像這樣的博客的主要目的之一是幫助彌合開發人員、高級用戶和普通用戶等群體之間存在的“理解鴻溝”——至少在廣泛的原則、想法、和創新。 一個很好的例子是,新的 WordPress JSON REST API 以及它對核心的添加對每個人意味著什麼,無論他們屬於 WordPress 用戶的技術範圍。

在過去一年左右的時間裡,關於 WordPress 的這個新增功能引起了很多關注,總的來說,開發人員似乎對此非常興奮。 我相信有充分的理由,但我不希望其他人被排除在樂趣之外。 或者,就此而言,集思廣益如何最好地使用它。

這就是為什麼在這篇文章中,我想向您介紹 WordPress JSON REST API 技術背後的基本思想,並描述一些開發人員已經在用它做什麼。 我還將解釋它還有什麼可能,並希望能激勵你們中的一些人以更有趣、更未經探索的方式使用它。

首先,讓我們澄清一些關鍵術語。

什麼是 API?

API 或應用程序編程接口是一種軟件中介,它允許程序相互交互並以有限的、明確定義的方式共享數據。

APIs 的一些很好的例子是:

1. 任何時候應用程序使用谷歌地圖顯示其位置信息。

2. 移動或桌面推特客戶端。

3. 集成了 Facebook 登錄、消息等功能的遊戲/服務。

在這些情況下,以及所有其他類似情況,API 會“公開”主要應用程序的某些內部功能,以便外部開發人員可以在他們自己的應用程序或網站中使用它們。 在這些示例中,應用程序開發人員能夠利用主要 Web 服務的強大功能(和/或內容),以便他們可以在這些服務的基礎上進行構建和/或將關鍵內容和功能集成到他們自己的產品中。 但同樣,僅限於有限的、明確定義的方式。 這允許一種開放式協作形式與安全性攜手並進。

什麼是 REST API?

REST 代表 REpresentational State Transfer。 它是一種構建 API 的架構風格; 不是代碼語言或對其功能的描述。 REST API 旨在在生產者(例如:Twitter)和消費者(例如:Twitter 客戶端)之間提供一種輕量級的通信形式(更少的帶寬),使其成為 Google Apps、Facebook、Twitter、現在是 WordPress。

什麼是 WordPress JSON REST API (WP API) 以及它是如何工作的?

JSON 代表 JavaScript Object Notation,是一種基於 JavaScript 代碼語言子集的輕量級數據交換格式。 人類易於閱讀和編寫,機器易於解析和生成。 這也使它非常適合創建 REST API——例如新的 WordPress JSON REST API 或 WP API,因為它已被命名。

JSON 是符號,REST 是架構風格,API 是它們組成的接口。 當您將它們放在一起時,您將獲得一個工具,開發人員可以使用該工具輕鬆地將數據從他們的 WordPress 網站共享到其他網站或應用程序。

更具體地說,WP API 允許您對 WordPress 內容執行 CRUD 操作。 這意味著創建、讀取、更新和刪除以下內容類型:

  • 帖子
  • 頁面
  • 自定義帖子類型
  • 媒體
  • 註釋
  • 分類法
  • 用戶
  • 或者您可以擴展它的任何其他類型的內容......

為了更好地了解為什麼有人可能想要首先這樣做,查看一些顯示這些功能的好處的用例會有所幫助。

WP API 的使用情況如何?

隨著 WP API 部分成為核心並可供所有 WordPress 用戶使用,與以創新方式使用它相關的價值呈指數級增長。 不過,到目前為止,根據我個人的觀察和閱讀,有一些明顯的用例目前似乎占主導地位。

例如,您可以使用 WP API 來改進幾乎所有基於 JavaScript 的現有 WordPress 功能,例如:

  • Backbone.js 他們或插件
  • 填充無限捲軸
  • 表單驗證/提交
  • 前端內容編輯

你也可以:

  • 顯示來自多站點網絡中另一個站點的內容
  • 顯示來自單獨 WordPress 網站的內容
  • 在單獨的 WordPress 站點或多站點網絡中的另一個站點上創建或更新內容

這些都是非常有價值的用例,既可以解決現有問題,又可以增加新的創意可能性。 但是,我最期待看到未來發生的是下面的一些潛在用例。

WP API 的其他一些潛在用例是什麼?

對我來說,WP API 最酷的方面之一是它允許您完全擺脫 WordPress 的內容。 為 WordPress 用戶提供前所未有的對其內容體驗方式的控制。

有幾種方法可以選擇執行此操作:

在移動/桌面應用程序(不是官方 WordPress 應用程序)中顯示和管理您的內容。

對我來說,這個是巨大的。 它為內容創作者和消費者提供了大量的可能性。 內容創建者可能會開始看到新的更好的移動/桌面博客客戶端,允許他們在 WordPress 本身的後端永遠無法構建的獨特環境中創建博客文章等。 同樣,使用功能與 WordPress 完全不同但從 WordPress 網站獲取內容的程序,可以在 Web 或移動應用程序上構建全新的內容體驗。

將您的內容與其他應用程序平台集成。

可能有一些應用程序平台不是基於 PHP 或 WordPress 中使用的任何代碼語言構建的,但它們仍然能夠與您的內容無縫交互。 我可以看到某種聚合工具,它允許人們快速輕鬆地連接他們的博客並通過標籤或類別添加內容。 或者完全不同的東西! 從字面上看,唯一的限制是您如何創造性地操縱我們上面討論的範圍廣泛的 CRUD 操作。

將其他應用程序平台與您的 WordPress 站點集成。

這個基本上是最後一個用例的反面。 儘管如此,重要的是要自己指出。 這可以讓您擁有非常廣泛的內容源,全部輸入一個 WordPress 網站,然後按照您想要的方式顯示。

WP API 對 WordPress 的未來意味著什麼?

簡而言之,WP API 對 WordPress 的未來意味著什麼,它離成為一個成熟的應用程序平台又近了一步。 我們如何使用它,將是決定它成為現實的速度和方式的眾多關鍵因素之一。 不過就我個人而言,我並不擔心 WordPress 是否被歸類為一回事,我只是對新的可能性感到興奮。

例如,我希望有一些我最喜歡的寫作、視頻編輯和圖形程序能夠直接發佈到 WordPress 中。 我可以想像你可以做很多令人驚奇的事情——從主題到講故事到“簡單”的文章發布——這個新的 API 使之成為可能。 現在我們只需要作為一個社區共同努力來構建這一切!

推薦的 WP API 資源

如果您有興趣了解有關 WP API 的更多信息以及您可以使用它做什麼,我建議您查看以下資源:

  • WP API 官方文檔站點
  • Rachel Baker:使用 WP-API 將您的內容置於 REST 中

  • JSON REST API 簡介(系列)
  • HTTP 和 REST 初學者指南

  • 學習休息

綜上所述

WordPress 一如既往地不斷發展和變化,以繼續滿足其社區的需求。 將 WP API 添加到核心是它在很長一段時間內完成的最大和最令人興奮的方式之一。 我知道我個人很高興看到其他人決定用它做什麼,我很想找到團體來就我自己的想法進行合作。 可你呢? 您對 WP API 感到興奮嗎? 至少你覺得你現在明白了嗎? 請花一兩分鐘在下面的評論部分與整個社區分享您的想法。

文章縮略圖來自 Imagentle // shutterstock.com