• メニュー
  • メニュー

【WordPress】再利用ブロックをテンプレートファイルで使う方法

WordPressでブロックエディタの再利用ブロックを、Single.phpや自作したテンプレートファイルに表示させる方法をご紹介します。

Gutenbergの再利用ブロックは非常に便利で、ボタン1回で登録したブロックを表示することができます。ブログ冒頭や、ブログ末尾に毎回同じ文言を載せたい場合など、再利用ブロックは大変おすすめです。

それでも毎回表示させるなら、テンプレートファイルに書き込んで記事にすら書かずとも表示させることもできます。

再利用ブロックをテンプレートファイルに書き込む方法

方法をご紹介します。

まず、私の場合Twitter登録してねーという表示を毎回記事の最後に表示したい(していた)と思います、再利用ブロックを使用していました。

ボタン一発で下記のような表示が可能です。


有益情報も流しているのでツイッターもぜひフォローお願いします。


このアスタリスクと***から吹き出し、そして***までが再利用ブロックのセットです。この表示をクリック1つで表示できるのは嬉しいですが、毎回表示させるなら、Wordpressのテンプレートファイルに書き込んでしまって表示させたほうが楽ですよね。忘れないし。

ということで、方法です。前置き長くてすみません(笑)

ステップ1.再利用ブロックの名前を設定する

再利用ブロックには名前を付けることができます。というか、名前をつけますよね。

ブロックを選択して「再利用ブロックに追加」をクリックすると、すぐに名前を付けることになります。あとでいつでも名前を変更することは可能ですので、好きな名前を付けましょう。

再利用ブロックの名前付け

例で表示したTwitterの場合はこんな感じです。
再利用ブロックの名前に「Twitter follow」という名前にしています。

この再利用ブロックの名前をメモします。

ステップ2.phpコードを書き込む

投稿画面にいつも表示させたい場合はSingle.php、固定ページに表示したい場合はpage.phpに以下のコードを記入します。

<?php $reuse = get_page_by_title('Twitter follow', OBJECT, 'wp_block'); ?>
<?php echo apply_filters('the_content', '<!-- wp:block {"ref":'.$reuse->ID.'} /-->'); ?>

1行目のget_page_by_titleの最初の引数の所に再利用ブロックの名前を入れてあげます。変数の$reuserは好きな名前に変更可能ですが、残りの部分はそのまま利用します。

このコードを私のsingle.phpのテンプレートファイルに以下のように記入しました。一部抜粋です。

使っているテーマによってテンプレートファイルの書き方が違いますので、参考までとしてください。

<div class="entry-content">
   <?php if( trawell_get('headline') && has_excerpt() ): ?>
            <div class="entry-headline h5">
	     <?php the_excerpt(); ?>
            </div>
   <?php endif; ?>
      <?php get_template_part('template-parts/ads/single-top'); ?>
      <?php the_content(); ?>
   
   <?php $partners = get_page_by_title('Twitter follow', OBJECT, 'wp_block'); ?>
   <?php echo apply_filters('the_content', '<!-- wp:block {"ref":'.$partners->ID.'} /-->'); ?>

   <?php get_template_part('template-parts/ads/single-bottom'); ?>
      <?php wp_link_pages( array('before' => '<div class="trawell-paginated">', 'after' => '</div>', 'link_before' => '<span>', 'link_after'  => '</span>') ); ?>
                    

直接single.phpなどに書かずに、reuse.phpなどのテンプレートファイルを作成して、テンプレートファイルを読み込む方法も良いかもしれません。

まとめ:

作業はどんどん効率化していきましょう!!

今回のテンプレートファイルで再利用ブロックを表示する方法は、ひょっとしたら利用頻度は少ないかもしれませんが、Elementorなどでかなり凝ったブロックも再利用ブロック化することで、別のページに簡単に表示させることができます。

そうすることで自分でコーディングする必要なく、再利用ブロックを読み込むだけで、ひとつのテンプレートファイルを作成することだって可能ですね。

結構マニアックな内容でしたね!^^


有益情報も流しているのでツイッターもぜひフォローお願いします。


参考になったらシェアお願いします!
toshiki@ひざのうえ起業家

3児&2犬(大型)のウェブ大好きパパです。

サイト作り・デザイン大好きで、どんどん新しいサイトを作ろうとしてしまう性格の持ち主。けど、深く深く極めるのも好きなハイブリットです。Wordpress歴は18年くらいです。

子どもが大きくなってしまう前に、子どもとの時間を作りたくて脱サラ計画中。ひざのうえにノートパソコンを置いてでも稼げる仕事で起業を目指しています。

10年ちょい前に世界一周チケットで主要都市だけ回る旅行も経験、これからもいっぱい旅行したい一心で切磋琢磨しています。旅行大好きだから。

好きな物:ウェブサイト/旅行(国内・海外)/動画編集/音楽(クラシック/JAZZ/ポップス)/山崎豊子/久石譲/ショパン/ピアノ/ラブラドールレトリバー/コーヒー/ワイン/スポーツ全般/スキーモーグル/高校野球/スキューバ

夢:キャンピングカーで子どもと犬と日本一周、もう一度乗りたい豪華客船クルーズ、映画音楽の作曲、プール付きか温泉付きの別荘で暖炉の前でリクライニングチェアで老眼鏡付けて分厚い洋書を手に犬を足元に居眠り。

ストーリーを見る

コメント・質問する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です