WordPressのために複数のブロックプラグインを作成する方法
8450 ワード
写真でElodie Oudot on Unsplash
ファイルが欲しいですか?
あなたが私のようなせっかちであるならば、あなたはまっすぐに行くことができますthe code on GitHub .
一つのブロックプラグインを作成するためのパッケージがすでに存在していますので、複数のブロックプラグインを作成するための基礎として使用するつもりです.
のリリース以来@wordpress/create-block パッケージは、非常に簡単に開発されているブロックのプラグインを作成する(scaffolding)多くの容易になっている-それはWebpack、トランスポーター、SSS +全体の多くを設定するのは難しい仕事の多くを取る-私はいくつかのあなたのいくつかはまだ自分自身をロールバックする必要がありますが.
あなたが速く行くことを望むならば、私はよく知られることを勧めます
とにかく、最近、私は質問を見ました(Twitterで考える)-何か、このツールで複数のブロックを作成するには?
それで、私はこれに掘り下げていました、そして、それは私がこのポストで分担することを目指すものです.
私はこれに簡単にしようとするが、深さのセットアップガイドの詳細については、上記のリンクに従うことができます.
新しいプラグインを作成する
ローカル開発環境で
これは、名前の付いたメインプラグインディレクトリを作成します
一旦有効になったら、セットアップがポストエディタを通してブロックを追加することによってうまくいったことを確認してください.
上記のようにうまくいけば、プロジェクト構造を見て、複数のブロックをサポートするために再配置する必要があることを視覚化できます.
私はすべてのファイル/フォルダ、ちょうど関連するものを説明することはありません.
これは、メインのプラグインファイルであり、それは信じられないほど簡単です-それはコール
これはあなたのブロックのメイン設定ファイルです.where you define basic settings - また、あなたのブロック(エディタスクリプト、エディタスタイルと共有スタイル)で使用される他のファイルへの参照が含まれます.
The
私たちは現代の開発スタックを使用しています--それは我々が我々のプロジェクトでESNEEDとJSXコードを書くことができることを意味します、しかし、それがすべてのブラウザーで使われる前に、それは変換されなければなりません.このプロセスは自動的に処理され、結果はこのディレクトリに置かれます.
このファイルには
では、既存の構造を変換するプロセスを開始し、複数のブロックをサポートする構造にしましょう.
ここで注意する主なことは
このような想像的な何かを挙げましょう.
この場合、Buyボタンを使用します.
私たちは動くことができます
ディレクトリ構造は次のようになります.
このステップは重要です、我々はブロック名とタイトルを何かユニークに更新する必要があります.これらは変更する2つのプロパティです.
あなたのブロックで
以下の二つのscssファイルがあります. 両方ともクラスを含みます:
ここで使用するディレクトリを変更したいだけです
以下のようなメイン関数を更新できます:
使用するとき
ブロックファイルを動かしたので、新しい場所にスクリプトを作成する必要があります.に
上記の追加で、これはあなたのdevビルドを開始する新しい方法です.
それで、最初のランを通して、我々は基本的にデフォルトの生成されたブロックファイルをサブディレクトリに動かして、新しい名前+場所を使用するためにプロジェクトを再配線しました.
作成したい新しいブロックについては、プロセスは似ています.あなたがする必要があるのは、デフォルトのブロックファイルをコピーすることです
注意:
プロジェクトが使用される準備ができている2ブロック-購入ボタンとヒーローブロック(彼らは何もしないでください)-しかし、私は、上記のプロセスを学び、追加のブロックを自分で作成をお勧めします.
Download from GitHub
質問+フィードバックが大歓迎です.
あなたがこのポストが好きであるならば、来て、Hi overを言います-私の計画は、近い将来により多くのWordPress Developer関連の内容をつくることです.
ファイルが欲しいですか?
あなたが私のようなせっかちであるならば、あなたはまっすぐに行くことができますthe code on GitHub .
単一のブロックプラグインの作成
一つのブロックプラグインを作成するためのパッケージがすでに存在していますので、複数のブロックプラグインを作成するための基礎として使用するつもりです.
のリリース以来@wordpress/create-block パッケージは、非常に簡単に開発されているブロックのプラグインを作成する(scaffolding)多くの容易になっている-それはWebpack、トランスポーター、SSS +全体の多くを設定するのは難しい仕事の多くを取る-私はいくつかのあなたのいくつかはまだ自分自身をロールバックする必要がありますが.
あなたが速く行くことを望むならば、私はよく知られることを勧めます
@wordpress/create-block
, しかし、我々はまだ最初からステップを通過します.とにかく、最近、私は質問を見ました(Twitterで考える)-何か、このツールで複数のブロックを作成するには?
それで、私はこれに掘り下げていました、そして、それは私がこのポストで分担することを目指すものです.
ワードプレス/クリエイトブロックの設定
私はこれに簡単にしようとするが、深さのセットアップガイドの詳細については、上記のリンクに従うことができます.
新しいプラグインを作成する
@wordpress/create-block
. ローカル開発環境で
/wp-content/plugins/
ディレクトリを開き、そこから端末を開きます.npx @wordpress/create-block multiple-blocks-plugin
それはセットアップにいくつかの時間を取ることができる、ドリンクをつかむ…!これは、名前の付いたメインプラグインディレクトリを作成します
multiple-blocks-plugin
とデフォルトのプロジェクト構造.このディレクトリを入力し、devスクリプトを起動します.cd multiple-blocks-plugin
npm run start
今すぐプラグインを使用する準備ができていると、WordPressのダッシュボードのプラグインページを介して有効にすることができます.一旦有効になったら、セットアップがポストエディタを通してブロックを追加することによってうまくいったことを確認してください.
既存構造
上記のようにうまくいけば、プロジェクト構造を見て、複数のブロックをサポートするために再配置する必要があることを視覚化できます.
私はすべてのファイル/フォルダ、ちょうど関連するものを説明することはありません.
複数のブロックのプラグイン。PHP
これは、メインのプラグインファイルであり、それは信じられないほど簡単です-それはコール
register_block_type()
カレントディレクトリを引数として、block.json
ファイル().ブロック。JSON
これはあなたのブロックのメイン設定ファイルです.where you define basic settings - また、あなたのブロック(エディタスクリプト、エディタスタイルと共有スタイル)で使用される他のファイルへの参照が含まれます.
src
The
src
ディレクトリは、あなたがあなたのブロックで仕事の大部分をしているところです.これは通常、あなたのスタイルと同様にあなたのブロックエディタ機能を追加する場所です.ビルド
私たちは現代の開発スタックを使用しています--それは我々が我々のプロジェクトでESNEEDとJSXコードを書くことができることを意味します、しかし、それがすべてのブラウザーで使われる前に、それは変換されなければなりません.このプロセスは自動的に処理され、結果はこのディレクトリに置かれます.
パッケージ。JSON
このファイルには
npm run start
あなたのブロックを構築するために使用するスクリプト、我々はこれを更新し、作成する各ブロックのスクリプトを追加します.複数のブロックに変換するプラグイン
では、既存の構造を変換するプロセスを開始し、複数のブロックをサポートする構造にしましょう.
ここで注意する主なことは
block.json
, src
, and build
プロジェクト内のすべての他のファイルは、プラグイン/開発設定に関連します.0 .すべてのブロックを格納するディレクトリを作成します
このような想像的な何かを挙げましょう.
blocks
:multiple-blocks-plugin/blocks/
The next steps can be repeated for every new block you want to create.
1 .ブロックのディレクトリを作成する
この場合、Buyボタンを使用します.
multiple-blocks-plugin/blocks/buy-button/
2 .ブロック関連ファイルの識別とコピー
私たちは動くことができます
block.json
, src
and build
新しいブロックディレクトリに.ディレクトリ構造は次のようになります.
ブロックのブロック設定を変更します。JSON
このステップは重要です、我々はブロック名とタイトルを何かユニークに更新する必要があります.これらは変更する2つのプロパティです.
"name": "multiple-blocks-plugin/buy-button",
"title": "Buy Button",
新しい名前のメモを取る-multiple-blocks-plugin/buy-button
- 次のステップでそれを必要とするでしょう.4 .新しいブロック名への更新参照
あなたのブロックで
src
ディレクトリ編集index.js
:multiple-blocks-plugin/buy-button/src/index.js
を含む行を変更するregisterBlockType()
新しい名前を使用する名前を更新します.registerBlockType( 'multiple-blocks-plugin/buy-button', {
更新CSSクラス
以下の二つのscssファイルがあります.
blocks/buy-button/src/style.scss
blocks/buy-button/src/editor.scss
.wp-block-create-block-multiple-blocks-plugin
しかし、クラス名は私たちのブロック名に基づいています..wp-block-multiple-blocks-plugin-buy-button
6 .複数のブロックプラグインを更新します。新しい場所を参照するPHP
ここで使用するディレクトリを変更したいだけです
register_block_type
(これを行うのが初めてである場合)、または追加を追加するregister_block_type
新しいブロックディレクトリを参照します.以下のようなメイン関数を更新できます:
function create_block_multiple_blocks_plugin_block_init() {
register_block_type( plugin_dir_path( __FILE__ ) . 'blocks/buy-button/' );
// Additional blocks would be registered here
// register_block_type( plugin_dir_path( __FILE__ ) . 'blocks/another-block/' );
}
パッケージ内の新しいブロック用のスクリプトを作成します。JSON
使用するとき
npm run start
で定義されたスクリプトを実行していますpackage.json
, いくつかのデフォルト設定を使用します.ブロックファイルを動かしたので、新しい場所にスクリプトを作成する必要があります.に
scripts
セクションpackage.json
以下を追加する必要があります."start:buy-button": "wp-scripts start blocks/buy-button/src/index.js --output-path=blocks/buy-button/build/",
"build:buy-button": "wp-scripts build blocks/buy-button/src/index.js --output-path=blocks/buy-button/build/"
入力パスを指定しますsrc
我々のブロックのディレクトリ、そして、出力経路を示している出力経路build
我々のブロックのディレクトリ、そして、我々が我々のブロック名を加えることによってスクリプトをアップデートしたということ:buy-button
スクリプト名に.上記の追加で、これはあなたのdevビルドを開始する新しい方法です.
npm run start:buy-button
あなただけの代わりにそれを使用する必要がありますnpm run start
開発モードで実行するためには、次のようにします.npm run build:buy-button
そして、それは、あなたが行くには良いです-あなたはこれらのブロックを行うことはあなた次第です!概要
それで、最初のランを通して、我々は基本的にデフォルトの生成されたブロックファイルをサブディレクトリに動かして、新しい名前+場所を使用するためにプロジェクトを再配線しました.
作成したい新しいブロックについては、プロセスは似ています.あなたがする必要があるのは、デフォルトのブロックファイルをコピーすることです
@wordpress/create-block
) - 注意:
build
フォルダーは実際には必要ありません(以前に移動しました)-コマンドラインスクリプトを実行すると自動的に生成されます.repo +ファイル
プロジェクトが使用される準備ができている2ブロック-購入ボタンとヒーローブロック(彼らは何もしないでください)-しかし、私は、上記のプロセスを学び、追加のブロックを自分で作成をお勧めします.
Download from GitHub
質問+フィードバックが大歓迎です.
あなたがこのポストが好きであるならば、来て、Hi overを言います-私の計画は、近い将来により多くのWordPress Developer関連の内容をつくることです.
Reference
この問題について(WordPressのために複数のブロックプラグインを作成する方法), 我々は、より多くの情報をここで見つけました https://dev.to/rmorse/how-to-create-a-multiple-block-plugin-for-wordpress-mpmテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol