「WordPress.ORGからプラグインのダウンロード数を取得するPHPスクリプト」を書いた時にAPIは無いのかと思ったが、よく考えるとダッシュボードからプラグインを追加する際に、WordPress自身も明らかにWordPress.ORGからデータを取得している。
で、調べてみると「/wp-admin/includes/plugin-install.php」の中にplugins_api()という関数があり、これを使えば各種データを取得できる。
この関数を使えば、多くの情報を正確に取得できるのだが、結局、特殊なページをwp_remote_post()しているだけなので、パフォーマンス面ではメリットはない。
実際に使ってみたが取得する情報量が非常に多いので、パフォーマンスは良くない。
特殊な情報が必要でない限り、wp_remote_post()でプラグインページのHTMLを取得して、正規表現で切り出したほうが自サイトにもWordPress.ORGにも優しいと思う。
ちなみに「plugin-install.php」は、常に読み込まれているわけではないようなので、プラグインなどでplugins_api()を使う場合は、require_once()すること。