凄い。Gutenberg。
再利用可能ブロックを子テーマのテンプレートファイルで、PHPから呼び出す方法を見つけたのでメモ。
英語でググったら、ビンゴの情報が、公式フォーラムにあった。感謝です!
テンプレートファイル(例えば、single.phpなど)に、以下のコードを貼り付けると、再利用可能ブロックに登録したデータが出力される。
<?php
// get reusable gutenberg block
$reuse_block = get_post( 123 ); // 123 is ID. reusable block page. ID from the URL.
$reuse_block_content = apply_filters( 'the_content', $reuse_block->post_content);
echo $reuse_block_content;
?>
ここの 123 は、ID番号だ。これは、再利用可能ブロックの管理ページを開き、編集画面に入ると、URLの中にIDがある。
例えば、企業のWEBサイトだと、全ページのフッター直前に、企業情報(お洒落なデザイン)で表示したいニーズが多い。
ウィジェットを使っても同じことはできる。しかし、ウィジェットではブロックエディタはまだ使えない。ウィジェットを使うとHTMLコードでガリガリ書くことになる。
一方、再利用可能ブロックだと、ブロックエディタで作ることができる。
このメリットは、WEBサイトを納入後、クライアントさんが「文章を少し変更したい」という場合に、HTMLを操作はやりたくない、となってしまうが、ブロックエディタだと、ビジュアルで確認できるので、マニュアルドキュメントを整備しておくことで、クライアントさん自身で変更が可能になる。
さらに、再利用可能ブロックは、JSONでバックアップもカンタンにできる。そのため、万が一、操作が間違った場合も、復旧が容易だ。
PHPコードを使わずに、ショートコードから再利用ブロックを使いたい場合は、プラグインでカンタンに使えるので、こちらの記事を参考に。