WordPress の検索結果を関連度から日時降順にする

WordPress のデフォルトの検索結果は 3.7 以降関連度順になっているのですが、これだと少々不便……ということがあったので、サクッと変更しました。

サンプルコード (プラグインのケース)

<?php
/*
Plugin Name: Sort Date Desc My Plugin
Description: 検索結果を日付順でソートする
Author: My Name
Version: 0.1
*/

function posts_sort_order_by_date_desc ()
{
    return 'post_date desc';
}

add_filter('posts_search_orderby', 'posts_sort_order_by_date_desc');
  • 関数を posts_search_orderby のアクションフックに引っかける
  • 関数の戻り値にSQL文 の ORDER BY の後ろに付く文字列を指定する

という感じで良いようです。

参考

この記事を書いた人

アルム=バンド

フロントエンド・バックエンド・サーバエンジニア。LAMPやNodeからWP、Gulpを使ってejs,Scss,JSのコーディングまで一通り。たまにRasPiで遊んだり、趣味で開発したり。