WPのデバッグログ見たらプラグイン『WordPress Related Posts』の影響でエラーが発生していた件

直ちに影響があったわけではないので、気づいて長らく放置していたのですが、Wordpressで関連記事を表示してくれるプラグイン『WordPress Related Posts』において、特定の条件下でSQL絡みのエラーが発生していたので、現象確認&対策してみた。

 

発生していた現象

プラグイン『WordPress Related Posts』で関連記事を表示している投稿ページの一部でSQLエラーが発生していた。
SQLエラーが発生する投稿、しない投稿を切り分けた結果、投稿に登録している「タグ」に全角チルダ(~)が含まれる場合にエラーが発生しているようだった。

 

対策

こういった状況で疑う点としては、テーブルカラムの照合順序設定。
phpMyAdminでMySQLにログインして、プラグインのタグを管理しているテーブル「{接頭辞}_rp_tags」のカラム「label」を確認してみると照合順序に“ujis_japanese_ci”が設定されていました。

 

照合順序でUJISを文字コードに指定してしまっているので、間違いなく原因はこれでしょうね。

 

基本的にWordpressで使用している文字コードはUTF8なので、照合順序は“utf8_general_ci”などに変更しましょう。
正しい照合順序に設定を変更してあげるだけで解決します。

 

最後に

外国産プラグインだからでしょうか、こういったマルチバイト文字絡みのエラーはいくら有名なプラグインでもなかなか絶えませんね。
『WordPress Related Posts』は多少は重くも、非常に便利なプラグインですので、手放しきれないのが現状です。
どうにか都合を合わせつつ、うまく付き合っていきたいですね~~~~~!