GutenbergでuseSelect()の罠にハマる
Gutenberg Dataにアクセスする時、useSelect()使ってますか?
ついついこの書き方面倒だったので、以下のようなコードを書いて...
ブロックエディタとUndo/Redoの複雑な関係・・・
この内容は好奇心的なもので実践向きではありません!
Gutenbergのデータモジュールにコアなストアがあります。
コアストア(core)にはREST APIを扱いやすくするEntitiesな機能(...
getEntityRecords()とページネーション。
getEntityRecords()とページネーション。
使える条件は?
エンティティ操作ではメタ情報からアイテムの総数およびページの最大数を取得出来るようになってます。
ただし、設定にsupport...
GutenbergでRedux風にストアを登録する。
GutenbergでRedux風にストアを登録する。
今回はcreateReduxStore()をより深く探っていきます。
以下のリンク先が理解できる知識があることが前提となります。
WordPres...
GutenbergのエンティティとREST APIの関係
GutenbergのエンティティとREST APIの関係
Gutenbergのエンティティ
WordPressは投稿やカテゴリなど多くのREST APIを公開しています。
例えば「投稿」で考えてみます...
ブロックパターンと再利用ブロックについて!
ブロックパターンと再利用ブロックについて!
再利用ブロックについて調べました。
記事はインサーターや初期設定など広範囲に及んでます。
まず再利用ブロックと呼ばれていたものは同期ブロックに変更されました...
WordPressのブロック開発メモ その16 バリエーション/スタイル/パターン
記事作成
今回ブロックの機能をいくつかまとめて紹介します。
ブロックパターン
ブロックスタイル
ブロックバリエーション
ブロックパターン
複数のブロックの塊をひな形にしちゃおう的な発想。
例えばプ...
WordPressのブロック開発メモ その15 エンティティ
WordPressのREST APIにはapiFetch()で簡単にアクセスすることはできます。
ただその対象が投稿タイプ(postsやpagesなど)やタクソノミー(categoriesやtagsな...
WordPressのブロック開発メモ その14 ウィジェットとブロックへの変換
前回はブロックの変換についてでした。
WordPressのブロック開発メモ その13 ブロックの変換
今回はウィジェットと、ブロックへの変換についてです。
これまでのウィジェット
WordPressに...
WordPressのブロック開発メモ その13 ブロックの変換
前回はブロック作成についてでした。
WordPressのブロック開発メモ その12 ブロックの作成とシリアライズ/デシリアライズ
今回はブロックの変換についてです。
変換によく出てくるcreateBl...
WordPressのブロック開発メモ その12 ブロックの作成とシリアライズ/デシリアライズ
前回はREST APIについてでした。
今回はブロックの作成と、前回のREST APIを応用した遊びをやってみようと思います。
WordPressのブロック開発メモ その11 REST API へのア...
WordPressのブロック開発メモ その11 REST API へのアクセス
前回はワードプレスのデータを扱うストアの紹介をしました。
WordPressのブロック開発メモ その10 Redux ストアの作成
今回、この投稿は若干難易度が高いので飛ばしてもらっても構いません。
...
WordPressのブロック開発メモ その10 Redux ストアの作成
前回ではセレクタとアクションを使ってストアからデータにアクセス手段を紹介しました。
WordPressのブロック開発メモ その9 データの操作(セレクタとアクション&ディスパッチ)
ストアはW...
WordPressのブロック開発メモ その9 データの操作(セレクタとアクション&ディスパッチ)
前回はフックについてでした。
WordPressのブロック開発メモ その8 フック(アクションとフィルター)
今回はRedux的なデータ操作について紹介します。
セレクタとアクション
状態を取得するセ...
WordPressのブロック開発メモ その10ー1 リゾルバの解読
https://github.com/WordPress/gutenberg/blob/4fa2a874fe9c61a4609ea273425d1302ecc18bd0/packages/data/s...
WordPressのブロック開発メモ その4ー2 ダイナミックブロック
今回はsaveコンポネントを破棄し、サーバーサイドでレンダリングする方法です。
saveを削除
saveではフロント表示用のコンポーネントを定義していました。
これをサーバーサイドでレンダリングするこ...
WordPressのブロック開発メモ その8 フック(アクションとフィルター)
前回は高階コンポーネントについて解説しました。
WordPressのブロック開発メモ その7 HOC(高階コンポーネント)
今回はフックについてです。
ブロックにもワードプレス本体のフックのようなもの...
WordPressのブロック開発メモ その7 HOC(高階コンポーネント)
前回はスロットについてでした。
WordPressのブロック開発メモ その6 スロット
今回は鬼門でもある高階コンポーネントについてです。
パッケージは@wordpress/composeにあります。...
WordPressのブロック開発メモ その6 スロット
ブロックを扱う上で結構重要な概念がスロットです。
前回で説明したInspectorControlsやBlockControlsなど(以下参照)、
WordPressのブロック開発メモ その5 ツールバ...
WordPressのブロック開発メモ その3 編集
前回(WordPressのブロック開発メモ その2 TypeScript編)の続きです。
属性
これまでsave及びeditは単に固定されたメッセージを表示するだけの最低限のコードでした。
今度はed...
WordPressのブロック開発メモ その2 TypeScript編
前回のブロック開発の基本では、ひな形がJavaScriptを生成してました。
WordPressのブロック開発メモ その1
やっぱ、TypeScript使いたいよね!
ひな形はJavaScriptで書...
WordPressのブロック開発メモ その1
ワードプレスのブロック作成メモです。
既に本家に翻訳されたドキュメントがあるのですが、
ちょっと分かりにくいところがあったりハマったりもしたので簡素化して纏めました。
最低限の情報しか載せてないので入...
WordPressのブロック開発メモ 目次!
現在WordPressブロック開発の情報収集してます。
それぞれの記事を書いている時点ではまだ詳しい知識がないため、
間違いやもっといい他のやり方などがある可能性が高くなります。
ブロック開発について...
WordPressのブロック開発メモ その6-1 スロットとプラグイン
前回ではスロットを紹介しました。
WordPressのブロック開発メモ その6 スロット
今回はスロットを裏で支えるプラグインについても掘り下げていこうと思います。
プラグインに追加すること前提で提供...
WordPressのブロック開発メモ その5 ツールバーとサイドバー
前回はGutenbergコアのコンポーネントをいくつか紹介しました。
WordPressのブロック開発メモ その4 コンポーネント
今回はツールバーとサイドバーについてです。
ツールバー
ブロックエデ...
WordPressのブロック開発メモ その4ー1 アイコン一覧
WordPressのブロック開発メモ その4 コンポーネント
前回はReactだけの知識で完結するようWordPress(Gutenberg)コアで用意されているコンポーネントの使用をさけてました。
WordPressのブロック開発メモ その3 編集
今回はGu...
ReactのuseEffect()の動作を確認してみる
前回はuseRef()でしたが、今回はその続きです。
useEffect()の第二引数を調べてみました。
引数なし、空の配列、要素一つの配列の3通りで試しました。
作業内容は
Clickボタンを2回...
ReactのuseRef()の動作
useRef()、再レンダリングせず、コンポーネント単位の状態を持てるという2つのメリットがあります。
非エクスポート変数を使った場合、useState()を使った場合、useRef()を使った場合を...
Redux Toolkit で非同期なDispatchをキャンセルするには?
Redux Toolkit で非同期なDispatchをキャンセルするには?
本家のドキュメントにも書いてあるけど、
ちょっと理解に時間かかったので忘れる前に簡潔なメモ。
createAsyncThu...