WordPressの投稿画面にJavaScriptでブロックを追加する方法
問題
WordPressの投稿画面で、テンプレートや固定文面をセットするブックマークレットを作っていたのですが、WordPress5(Gutenberg)になってから動かなくなりました。
以前の投稿画面では、textarea の value に値を入れればよかったのですが、新しい投稿画面(Gutenberg)ではどうしたらよいですか。
答え
以前はこんなのでよかったですね。
javascript:void((function(){jQuery('#content').val('<h2>タイトル</h2>\n\nテンプレート');})());
Gutenberg ならこんな感じ。
javascript:void((function(){wp.data.dispatch('core/editor').insertBlocks([wp.blocks.createBlock('core/heading', {content: 'タイトル'}), wp.blocks.createBlock('core/paragraph', {content: 'テンプレート'}), wp.blocks.createBlock('core/heading', {content: '見出し'})]);})());
https://developer.wordpress.org/block-editor/packages/packages-blocks/
https://stackoverflow.com/questions/50065834/how-to-manually-insert-a-block-in-gutenberg
コメント