インタラクティビティAPIドキュメントのナビゲーション
興味のあるトピックを見つけるために、以下のリンクを使用してください。インタラクティビティAPIを初めて使用する場合は、以下のリソースをリストされた順序で読むことを検討してください。
- 要件: インタラクティビティAPIを使用してインタラクティブブロックを作成する前に、このセクションを確認してください。
- クイックスタートガイド: インタラクティビティAPIを使用してカスタムブロックを1分以内に立ち上げます。
- チュートリアル: インタラクティビティAPIの初見 このWordPress開発者ブログの記事は、インタラクティビティAPIを紹介する素晴らしい方法です。
- コア概念 このセクションからインタラクティビティAPI開発に関連する概念やメンタルモデルをよりよく理解します。
- APIリファレンス: APIが内部でどのように機能するか、ディレクティブのリスト、ストアの機能について深く掘り下げます。
- ドキュメントと例: インタラクティビティAPIについてさらに学ぶための追加リソース。
インタラクティビティAPIが何であるかをより深く理解したり、この標準に関する質問の答えを見つけたりするには、以下のリソースを確認してください:
- インタラクティビティAPIについて: APIの目標や、ブロックにインタラクティビティを追加するための標準の使用理由について学びます。
- よくある質問: 技術の背後にあるいくつかのよくある質問や代替手段に対する回答を見つけます。
インタラクティビティAPIの要件
インタラクティビティAPIは、WordPress 6.5のコアに含まれています。それより前のバージョンでは、WordPressインストールにGutenberg 17.5以上がインストールされ、アクティブ化されている必要があります。
ブロック作成のワークフローは変更されず、すべての前提条件は同じままであることを強調することも重要です。これには以下が含まれます:
ブロック開発環境を設定し、WordPress 6.5+(またはGutenberg 17.5+)を実行すると、インタラクションの作成を開始できます。
コード要件
プロジェクトにインタラクティビティを追加
次のコマンドを使用して、プロジェクトにインタラクティビティAPIをインストールします:
npm install @wordpress/interactivity --save
ストアをview.js
にインポートします。詳細については、ストアのドキュメントを参照してください。
import { store } from '@wordpress/interactivity';
block.jsonにインタラクティビティサポートを追加
ブロックがインタラクティビティAPIの機能をサポートしていることを示すために、ブロックのblock.json
ファイルのsupports
属性に"interactivity": true
を追加します。
// block.json
"supports": {
"interactivity": true
},
このプロパティの詳細な説明については、interactivity
サポートプロパティのドキュメントを参照してください。
viewScriptModuleでインタラクティビティAPIのJavaScriptコードを読み込む
インタラクティビティAPIは、@wordpress/interactivity
スクリプトモジュールを提供します。インタラクティビティAPIを使用するJavaScriptは、@wordpress/interactivity
に依存できるようにスクリプトモジュールとして実装する必要があります。スクリプトモジュールはWordPress 6.5以降で利用可能です。ブロックは、viewScriptModule
ブロックメタデータを使用して、スクリプトモジュールを簡単にエンキューできます:
// block.json
{
...
"viewScriptModule": "file:./view.js"
}
``````bash
// package.json
{
"scripts": {
...
"build": "wp-scripts build --experimental-modules",
"start": "wp-scripts start --experimental-modules"
}
`
DOM要素にwp-interactiveディレクティブを追加
DOM要素(およびその子要素)でインタラクティビティAPIを「アクティブ化」するには、ブロックのrender.php
またはsave.js
ファイルのDOM要素にwp-interactive
ディレクティブを追加します。
<div data-wp-interactive="myPlugin">
<!-- Interactivity API zone -->
</div>
このディレクティブの詳細な説明については、wp-interactive
ドキュメントを参照してください。
ドキュメントと例
インタラクティビティAPIについてさらに学ぶためのリソースをいくつか紹介します:
- WordPress 6.5開発ノート
- マージ発表
- 提案: インタラクティビティAPI – インタラクティブブロックの構築におけるより良い開発者体験
- インタラクティビティAPIの議論、特にショーケースの議論。
- wpmovies.devデモとそのwp-movies-demoリポジトリ
block-development-examplesでのインタラクティビティAPIを使用した例:
インタラクティビティAPIドキュメントに関連する作業の調整を容易にするために、トラッキング問題が開かれています: インタラクティビティAPIのドキュメント – トラッキング問題 #53296