WordPressの改造

また何やらゴソゴソやっている模様。まず、WordPressは2.6.2にバージョンアップしました。一応のバックアップを取って、差分ファイルをさくっと上書きで問題ありませんでした。それから、色々と改造。

検索結果に対して件数表示を行う。search.phpのタイトルの部分に以下を挿入。

'<?php echo wp_specialchars($s); ?>' の検索結果: <?php $my_query =& new WP_Query("s=$s & showposts=-1"); echo $my_query->post_count; ?>件 

タグにもタグの検索件数表示をやりたいけど、分からない。上のカテゴリー版のコードを見ると、WP_Queryが大事そう。けれど、あまり良い日本語の説明(特にパラメータに関して)が出ない。けれど、Learning WP_Query – iDeasiloを見つけた。ので色々代入して試してみる。パラメータsはカテゴリー名を拾って一覧にしているみたい。そしてこのsの代わりにtag=でやればタグで拾って一覧にしてくれそうだ。

タグ '<?php echo single_tag_title('', false); ?>' の検索結果: <?php $current_tag = single_tag_title("", false); $my_query =& new WP_Query("tag = $current_tag & showposts=-1"); echo $my_query->post_count; ?> 件

けれど上手く動かない。全記事数が表示されます。tagが上手く効いていないのか$current_tagが日本語だからかな…。でもUTF-8だし…。よくわからない。
あと、複数タグで絞り込んだ場合に「複数タグ」の検索結果と表示できない。「single_tag_title()」はひとつしかタグを拾ってくれない模様。 ふたつ以上は想定外みたいです。URLから拾うことができればたぶんできるんだろうけど、面倒です。

検索の不具合はSearch Everythingが4.7.6.2にバージョンアップし直ったようですが、やはりAND検索は上手くいかない。半角スペースでもだめなので、違うかもと思いつつ、上のプラグインを導入。…やっぱりだめでした。検索しても、AND検索が上手くいかないという記事は出てこない(日本語では)。なんでだろうか。
と、ここで、記事内の単語+単語だと上手くいくことを発見。タグ+タグとか、記事内の単語+タグとか、記事内の単語+カテゴリーとか、だとだめなようです。うーん、これは…プラグインのバージョンアップを待つか、プラグインの中身を書き変えるか、ですね。タグ同士の検索がいって欲しいのですが。
あとできるならば、カタカナ⇔ひらがな、の両方で検索できたりしたら便利かと思ったり。PHPの文字列関数(http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/php_k05.htm)にそういうのあるし、プログラム的にできそうな気はするんだけど…。時間があるときにチャレンジしたいところです。