AstroJavaScript

AstroでWordPress.orgのプラグイン情報を取得・表示する

個人ポートフォリオサイトをAstroで作り直し中です。 公開しているWordPressプラグインの情報を取得・表示したかったので、やり方をまとめました。 プラグイン情報をAPIから取得する方法 api.wordpress […]

広告ここから
広告ここまで

個人ポートフォリオサイトをAstroで作り直し中です。

公開しているWordPressプラグインの情報を取得・表示したかったので、やり方をまとめました。

プラグイン情報をAPIから取得する方法

api.wordpress.org/plugins/info/1.2/?action=query_pluginsでWordPressプラグイン情報を検索・取得できます。

そこで検索用の関数を用意しました。

  export const searchWordPressPlugins = async (query) => {
    try {
      const res = await fetch(
        `https://api.wordpress.org/plugins/info/1.2/?action=query_plugins&${query}`,
      )
      const result = await res.json()
      return result
    } catch (e) {
      console.log(e)
      throw e
    }
  }
  

クエリを引数で渡すと、プラグイン情報を検索できます。

await searchWordPressPlugins('request[author]=hideokamoto')

Astroでデータ取得と表示を行う

検索関数をコンポーネントスクリプトに追加しましょう。

---
const plugins = await searchWordPressPlugins('request[author]=hideokamoto')
---

あとは取得したデータを元に、テンプレートを記述するだけです。


<ul>
    {plugins.map(plugin => (
        <li>
            <a href={`https://wordpress.org/plugins/${plugin.slug}`}>{plugin.name}</a>
            <span>{plugin.short_description}</span>    
        </li>
    ))}
</ul>

これで表示されました。

ブックマークや限定記事(予定)など

WP Kyotoサポーター募集中

WordPressやフロントエンドアプリのホスティング、Algolia・AWSなどのサービス利用料を支援する「WP Kyotoサポーター」を募集しています。
月額または年額の有料プランを契約すると、ブックマーク機能などのサポーター限定機能がご利用いただけます。

14日間のトライアルも用意しておりますので、「このサイトよく見るな」という方はぜひご検討ください。

広告ここから
広告ここまで

Related Category posts