当サイトには広告が含まれます
スポンサーリンク
WordPress

LiteSpeed Cache v5.7のESIショートコード不具合

WordPressのプラグイン『LiteSpeed Cache』v5.7でESIブロック化したショートコードが正常に出力されなくなった際の備忘録記事です。

スポンサーリンク
スポンサーリンク

基本情報

LiteSpeed Cacheプラグインをv5.6→v5.7へと更新すると、ESIブロック化していたショートコードが正常に出力されなくなった。

結論から言うと、WordPressのパーマリンク設定でパーマリンク構造をトレイリングスラッシュ(末尾のスラッシュ「/」)のあるものに変更すると正常に動作するようになった。

トレイリングスラッシュ無しだと、ESIブロック化したショートコードは正常に出力されなかった。

環境メモ
  • WordPress:6.3.2
  • LiteSpeed Cache:5.7.1
  • テーマ:Cocoon 2.6.8.4
  • サーバー:ColurfulBox BOX2 / LiteSpeed Enterprise

v5.6→v5.7でESIブロック化したショートコードに関連する脆弱性が修正されています。

これに関連しているのかも?

症状

正常な出力結果
中身の要素が出力されない不具合

上記画像の赤枠部分のショートコードは以下(テーマCocoonの新着投稿のタイトルリスト)。

[esi info_list ttl="0"]

先頭に「esi」を追加したショートコードが正常に出力されなくなる。本来出力されるはずの中身がすっぽり抜け落ちる。

デベロッパーツールで確認すると「ttl=”0″」を指定しても、「uncached」にならず「cached」となっていた。

WordPressの公式テーマ『Twenty Twenty-One』で、WordPressデフォルトのショートコード「gallery」などでも同様の状態になった。

確認した範囲では、ESIブロック化した全てのショートコードが正常に出力されなかった(テスト時は毎回全てのキャッシュをパージ済み)。

対処

「管理画面」→「設定」→「パーマリンク」の設定画面

パーマリンク構造をトレイリングスラッシュのあるものに変更すると、ESIブロック化したショートコードが正常に出力されるようになった。

パーマリンク構造が、「数字ベース」や末尾にスラッシュのない「カスタム構造」だとESIブロック化したショートコードが正常に出力されなかった。末尾がパラメーターの「基本(?p=123)」は正常に機能する。

当サイトはカスタム構造で「/%postname%」に設定していました。

原因を特定するためにテスト環境で色々試しましたが、まさかこんな単純なことだったとは😭

コメントの通知/購読設定
受け取る通知
guest
0 Comments
古い順
新しい順 評価順
Inline Feedbacks
View all comments
タイトルとURLをコピーしました