TT2(Twenty Twenty-Two)、TT3(Twenty Twenty-Three)テーマと、WordPressではデフォルトテーマが従来のテーマ(クラシックテーマ)から、レイアウトなど自由に編集ができるブロックテーマへ変わっています。

そんなに便利なら、今まで使っているクラシックテーマをやめて、TT3テーマなどへ今のサイトを変えようかしら?とお考えの方も多いはず。

でも、安易に移行すると、テーマやプラグイン独自のウィジェットが動作しない不具合が発生する可能性があるかも知れませんので、注意が必要です。

本ページでは、なぜ独自ウィジェットが動作しなくなる可能性があるのか?事前に確認する方法、移行方法について紹介していきます。

ブロックテーマで独自ウィジェットが動作しなくなるものがあるのはなぜ?

これを一言で表せば、ブロックテーマにはウィジェット、ウィジェットを表示するためのウィジェットエリアという概念がないからです。

テーマやプラグインを作成したことのある方ならご存じかと思いますが、旧来のテーマ(クラシックテーマ)では、例えばサイドバーなどウィジェットを表示するエリアを登録するプログラムや、独自のウィジェットを登録するプログラムを作成して、WordPressに読み込ませて使用します。

一方ブロックテーマには、そもそもウィジェットエリアという概念がなく、サイドバーを作る場合にも、カラムブロックを作成して一方を本文、他方をサイドバーといった具合にして、その中にテンプレートパーツやブロックを追加してレイアウトをしていきます。

つまりすべてはブロックで構成するというのが基本になっているのです。

従って、ウィジェットエリア(「外観」→「ウィジェット」で表示される画面上)にプラグインやテーマが独自に追加したウィジェットを配置して何かを表示させているサイトでは、きちんと動作するかの確認が必要です。

ウィジェットが動作するかを確認する方法

現状のテーマとプラグインで使っているウィジェットが、ブロックテーマへ変更しても使えるかどうかをある程度判定する方法を紹介します。

この方法で確認した場合でも、実際にブロックテーマへ移行したら動作しないということも十分にあり得ますので、コピーサイトやテストサイトを作って実際の動作確認を行うことをおすすめします

WordPress5.9以降で動作しているサイトで、現状問題なく動作しているサイトのウィジェット編集画面(「外観」→「ウィジェット」で開く画面)を開いてみてください。

WordPress5.8より前のバージョンでは、この方法での確認はできません

上下どちらの画面になりますか?

クラシックテーマからブロックテーマへの移行で留意すべきこと|Personal WP Customization Notes (PWCN)
ブロックベースのウィジェットエディター
クラシックテーマからブロックテーマへの移行で留意すべきこと|Personal WP Customization Notes (PWCN)
クラシックウィジェットエディター

上の画像は、WordPress5.8あたりで採用された、ブロックベースのウィジェットエディターという、ウィジェットにもブロックエディターが適用された画面、下の画像は、それ以前に使われていたウィジェット編集画面です。

もしも上の画像のような画面でウィジェットの設置を行っていて、サイトが問題なく動作しているようでしたら、ブロックテーマへ変更しても問題が起こる可能性は少ないと考えられます(確実に問題が起こらないということではありません..)。

逆に、下の画像のような編集画面になる場合は、ブロックベースのウィジェットエディターに変わった当初にこの機能をプラグインやコードを使って無効にしたり、テーマの機能で無効にしたりして、旧来のウィジェット編集画面に戻していることになります。

理由は、ブロックベースのウィジェットエディターが単純に使いにくいということのほか、表示が崩れたり、動作不良を起こす可能性を排除するためであると推察されます。

従って、前者の場合は問題なく動作する可能性があるかもしれない、後者の場合はひょっとすると動作しないかもしれないと考えられ、どうしてもブロックテーマへ変更したい場合を除いては、ブロックテーマへの変更は安易に行わない方が無難でしょう。

ブロックテーマの中で使用するには

クラシックウィジェット(ウィジェットエリア内で使用できたブロック)をブロックテーマの中で使用するには、以下の公式ページの手順を参考に変換する必要があります。

しかしながら、内容を読んでもさっぱり..という方も多いと思います。

そこで重宝するのが、クラシックウィジェットを呼び出せる機能を持つ以下のプラグインを追加することです。

詳しくはプラグイン公式ページを見ていただくとして、機能の概要としては、クラシックウィジェットを呼び出すためのブロックを追加し、そのブロックでクラシックウィジェットを呼び出すという動作をします。

ただ、これを使えば大丈夫ということではなく、設定項目のたくさんあるウィジェットなどでは機能しませんので、動作するかを見て..というのが妥当でしょう。

それよりも、現在使用しているプラグインやテーマに以下の機能が追加されていないかを確認し、手段がないようならブロックテーマの導入は見送る方が無難だと思います。

  • ウィジェットと同じものをブロックとして埋め込む機能や、ブロックとして埋め込むための別のプラグインが存在していないかどうか?
  • ウィジェットと同じ処理をショートコードで行う機能がないか?

WordPress公式サイト上に今後のウィジェットやウィジェットエリアについての言及を見つけることができませんでしたが、WordPressがブロックエディター&ブロックエディターを使ったブロックテーマへと遷移していくことは間違いなく、かつ、現時点でウィジェットという概念が戻ることもないでしょうから、似た機能を持つプラグインへの移行を行ったり、現在使用しているプラグインに対応予定があるかどうかを確認するなどして、今後も長くそのプラグインを使い続けることができるのかを探るのも大事だと思います。