解決:「text」ブロックはエラーの影響を受けており、正しく機能しない可能性があります

WordPressをバージョンアップしたら、カスタマイズ画面のウィジェットに、エラーメッセージが表示されるようになった。

「text」ブロックはエラーの影響を受けており、正しく機能しない可能性があります。詳細は開発ツールを確認してください。

ちょっと検索してみたら、どのサイトも一様に判で押したように、解決策はClassic Widgetプラグイン導入だと紹介している。

???

残念ながら、これは本質的な解決策ではない。「悪貨は良貨を駆逐する」という通り、誰かが言い始めたことを完全コピーしているに過ぎない。

「それではエラそうに言うお前はどう対処したんだ?」と仰るは、ごもっともだ。そこで “鋼の錬金術師” のように、「格の違いを見せてやるぜっ!」と行かせて頂くことにする。

何が起こっているか

僕の場合、エラー表示はLightningテーマのWordPressサイトで、バージョンを5.8へアップした時に発生した。カスタマイズのウィジェットで、次のように表示された訳だ。

「text」ブロックはエラーの影響を受けており、正しく機能しない可能性があります。詳細は開発ツールを確認してください。

もともとWordPressプログラムは、テキスト中心で始まった。しかし技術者ではない初心者の利用者も増え、その初心者たちの要望に応じるために、エディタツールのブロック化が進んだ。

WordPressバージョン5.0頃にブロックエディタが正式導入され、従来のクラシックエディタを使い続けたいユーザには、追加プラグインとして提供されるようになった。ウィジェットに関しても同様に、Classic Widgetプラグインが提供されるようになった。

で、そろそろバージョン6.0が見えて来た5.8の頃合いで、Classic環境向けのサポートを完全に廃止するための変更が開始された。それが今回のエラー表示騒動の真相である。WordPress開発チームの立場で見れば、両方に対応するのは面倒だ。

技術的に面白いテーマでもない。もっともな話だと言える。

だからバージョン6.0以降もClassic Widgetが提供されたとしても、これは暫定対応に過ぎない。いつかはWordPressが標準サポートしているブロックベースの操作性に慣れておくことが望ましい。

だから「「text」ブロックはエラーの影響を受けており、正しく機能しない…」に対して、Classic Widgetプラグインを使うとのいうのは、本来的な対応方法ではない。特にLightningテーマはブロック化を推奨しており、早々に移行した方が良い。

だから暫定的にClassic Widgetを導入するにしても、どこかのタイミングでブロック化対応することが望ましい。

ブロック化せよ

そんな訳で、「「text」ブロックはエラーの影響を受けており、正しく機能しない…」エラー表示に対しては、エラー箇所を確認し、ブロック化させることが望ましい。面倒だけれども、カスタマイズ –> ウィジェットで、ウィジェットを一つずつチェックするのだ。

僕の場合には半角スペースが勝手に記号化されている箇所が部分的に生じており、その部分を修正した。(コードとしてはnbspを書くのが妥当だけれども、なぜかブロックの中でも変換されてしまっていた)

それから使用停止中となっているウィジェットがあったので、それを削除した。この二つの作業により、エラー表示は無事に消去された。

「text」ブロックはエラーの影響を受けており、正しく機能しない可能性があります。

Lightningテーマの場合には、ウィジェットの一番下に、使用停止中のウィジェットが収納されるようになっている。実は最初は存在に気付かずに、どうしてエラー表示が消滅しないのか悩んでしまった。

まとめ

以上の通りで、僕は簡単なWidgetカスタマイズしか実施していなかったけれども、誰でも大差なくブロック対応できるだろう。

中にはJINのようにクラシック環境がなくなっても従来インターフェースで利用可能と謳うテーマも存在するけれども、APIサポートが無くなってしまったらどうしようもない。(ブロックに流し込む仕様にすれば良いけれども、いずれ開発者も面倒になってくる可能性がある)

そんな訳でClassic Widgetプラグインに頼るよりも、いさぎよくブロック化対応することがオススメとなる。またClassic Editorプラグインは暫く利用可能だけれども、そろそろブロックエディタに移行する頃合いだろう。

以上、少しでもお役に立つ部分があれば幸いだ。

それでは今回は、この辺で。ではまた。

—————————–
記事作成:小野谷静