WordPressで関連記事を表示するために、
YARPP – Yet Another Related Posts Plugin というプラグインを使っているのですが、WordPress を 6.1 に更新したら YARPP で fatal error が起きてしまいました(^_^;)
エラーの内容は↓こんな感じ。
Uncaught TypeError: round(): Argument #1 ($num) must be of type int|float, string given in wp-content/plugins/yet-another-related-posts-plugin/includes/template_builtin.php:33
サポートページでも同様なことが書かれていますね。PHPを7.4に戻したらうまく動いた、みたいなことも書かれていますが、更新する前の WordPress 6.0 と PHP 8.0 の組み合わせで問題なく動いていたので、それに関しては何とも謎な感じですね。う~む。
ちょっとソースを覗いた感じでは、
関連度合いを表すと思われる score という値の内容が、本来なら float なのに空文字になってしまっている模様です。WordPress 6.1 で何か変更になった影響でおかしくなってしまったのでしょうか・・・?
ということで、
現状、一時的にYARPPを無効化してあります。そのため関連記事が表示されなくなっています。ご了承下さい。
★追記。
PHP を 7.4 にしたら、YARPP が動くようになりましたが・・・何かおかしい。管理者としてログインしている間は「関連スコア」というのが表示されるようになっているのですが、値が全てゼロ・・・!? 明らかに値が変なのが気になるのですが、関連記事は表示されているようなので、とりあえず PHP 7.4 に戻した状態で運用してみます。
★2022-11-09追記。
YARPPの更新がメールで告知されてきたので、さっそく適用しました。PHP を 8.0 にした状態での動作も確認できました。だけど、管理者としてログインしている時に表示されるスコアが相変わらず「ゼロ」のまま(^_^;) 気になって色々試したら、編集状態にするとYARPPの表示オプションに値がちゃんと出ていました。修正がまだ不完全なのでしょうか? スコアを確認するには、いちいち編集状態にしないといけないことになるけど、関連記事のリンクはちゃんと出てくれているようなので、そんなに目くじらを立てるほどでもないかな。