カスタムフィールドの値も検索対象に含めたい

以前は、「Search Everything」というプラグインを使用しておりました。
ですがこちらのプラグイン、検索が非常に重くなるのと、別プラグインとの組み合わせで不具合が発生したりしていました。

今回は、プラグインを使用しない方法をご紹介致します。

実装コード

functions.php に以下コードをまるコピーするだけ!!

参考サイト

https://adambalee.com/search-wordpress-by-custom-fields-without-a-plugin/

意図した結果が得られない時

このままでも検索自体はできるのですが、キーワードによっては、意図しない記事が出てきてしまうこともあります。
それは通常のLIKE検索では、濁点・半濁点、ひらがな・カタカナを区別しないためになります。

例えば、ぱん で検索すると

  • アンパン
  • ばんそうこ
  • はんこ
  • ハンペン

なども全てヒット対象になっていまします。

濁点・半濁点、ひらがな・カタカナを厳密にするには、BINARY演算子を使用します。
各 LIKE 検索のところに BINARY を追加してください。


余談ですが、検索方式を「LIKE」から「LIKE BINARY」へ変更したい場合も同様になります。

  • このエントリーをはてなブックマークに追加
  • Pocket

コメントを残す