JavaScript のロード

プラグインを準備したら、次に JavaScript をロードするコードを追加します。この方法はスクリプトをエンキューする標準的な WordPress のプロセスと同じです。プラグインハンドブックのエンキューセクション を参照してください。

myguten-plugin.php ファイルに次のコードを追加してください。

function myguten_enqueue() {
    wp_enqueue_script(
        'myguten-script',
        plugins_url( 'myguten.js', __FILE__ )
    );
}
add_action( 'enqueue_block_editor_assets', 'myguten_enqueue' );

enqueue_block_editor_assets フックが使用されています。このフックはブロックエディターがロードされる際に呼び出され、JavaScript ファイル myguten.js をエンキューします。

ファイル myguten.js を作成し、次のコードを追加してください。

console.log( "I'm loaded!" );

テストとして、ブロックエディーターで新しい投稿を作成します。

ブラウザーの開発者ツールの JavaScript コンソールを利用してメッセージが表示されるかどうかを確認します。開発者ツールがわからない方は、Mozilla の “ブラウザー開発者ツールとは?” を参照してください。ドキュメントには JavaScript コンソールの詳細も含まれています。

コードが正しく登録されエンキューされると、コンソールにメッセージが表示されます。

成功した場合のコンソールログメッセージ

テーマ開発者への注意: 上のエンキュー方法はプラグインのものです。テーマ用にブロックエディターを拡張する場合は若干異なり plugins_url() の代わりに get_template_directory_uri() 関数を使用します。テーマの場合のエンキュー例が以下です。

function myguten_enqueue() {
    wp_enqueue_script(
        'myguten-script',
        get_template_directory_uri() . '/myguten.js'
    );
}
add_action( 'enqueue_block_editor_assets', 'myguten_enqueue' );

まとめ

この時点で、ディレクトリ wp-content/plugins/myguten-plugin 内にプラグインがあり、PHP サーバーサイドコードの myguten-plugin.php と ブラウザーで動作する JavaScript コード myguten.js の2つのファイルで実装されます。

これで必要な最初のパーツがすべてそろいました。ここからブロックエディターを拡張していきます。

最終更新日: