WordPress Popular Postsをバージョン「6.1.4」にアップロードしたところ、以下のようなエラーメッセージが表示され、これまで表示されていた記事が表示されなくなってしまいました。
Warning: DOMDocument::loadHTML(): Tag figure invalid in Entity, line: xx in /xxx/wp-content/plugins/wordpress-popular-posts/src/Output.php on line 166
プラグインを「6.1.3」にダウングレードし、修正バージョンを待てばいいのですが、ひとまず解決できたのでその方法をご紹介します。
具体的には「Output.php」の166行付近の以下のコードを、
$dom = new \DOMDocument();
$dom->loadHTML($html);
$xpath = new \DOMXPath($dom);
以下のコードに編集すればOKです。
$dom = new \DOMDocument();
libxml_use_internal_errors( true ); //追加したコード1
$dom->loadHTML($html);
libxml_clear_errors(); //追加したコード2
$xpath = new \DOMXPath($dom);
今回エラーが出た原因として、HTMLのマークアップが正しくない場合に「DOMDocument::loadHTML」使ってしまうと「Warning」が出てしまうということでした。上のコードを追加することで、エラーが出ないようにできます。
参考になれば幸いです。