QRコード
QRCODE
アクセスカウンタ
読者登録
メールアドレスを入力して登録する事で、このブログの新着エントリーをメールでお届けいたします。解除は→こちら
現在の読者数 0人
プロフィール
yochi
yochi
教員免許を小中高取ったはよかったものの、平成の間は教採一次試験が一度も合格できず・・・。
そんな管理人は、パワハラがはびこる三流○○ック企業で5年半に渡り数々の辛酸をなめた後、招聘された印刷会社のWEB部門で2013年3月に1級ウェブデザイン技能士を取るなど2年間在籍して成長を遂げた後、結構有名な会社に課長職も含め9年弱勤務。
が、定期昇給が無く、頑張り甲斐が無くなったので、元部下の話から教採を15年ぶりに受け始め、令和になって毎年二次試験まで進出できるように。教員免許の追加取得に向けて通信制大学で学び、免許の取得の条件が「人物に関する証明書」の取得で、二次試験落ちから考えられる実地経験の必要性から18年ぶりに臨採教員に復帰。
そして令和6年度から正規教員として勤務開始。
国の宝の子どもたちの育成のため、これまでの経験を活かして頑張ります。
~~所有国家資格~~
【1級ウェブデザイン技能士】
【基本情報技術者】
【2級ファイナンシャル・プランニング技能士(個人資産)】
【乙種危険物取扱者(第4類)】
メルマガ購読・解除
 

2012年05月23日

ある意味奇跡!!Wordpressのキーワード除外検索成功!

日頃の技術研究が実をつけたのか、CMS【Wordpress(ワードプレス)】の検索機能にて少なくとも日本語ユーザではまだ実装公開されていない、キーワード除外検索を付けることに成功しました!!
※【少なくとも日本語ユーザではまだ実装公開されていない】とは、今日現在google検索にて「wordpress 検索 キーワード除外」で検索して得られた結果によります。

これは結構ニーズが高いため、まずはポイントだけお教えします。
なお、今回の動作環境は、【PHP5.2.x】、【WP3.3.1】です。


いじるファイルは1つで、【wp_includes】ディレクトリ内の「query.php」になります。
また、別途利用テーマ内に【search.php】が必要です。

ポイントは、Googleのように「-」を付けたら除外に回し、それ以外のキーワードを検索に回すという処理です。
$q['s']が$wp_queryでグローバル保存されたキーワード変数ですので、これを3枚おろしにするかが腕の見せ所。

配列を2つ作り、一方には正規の検索、もう一方には除外検索の配列として格納します。
それらを、後に続くSQL文にうまくつなぎあわせてしまえば、除外検索構築作業終了となりました。

まあ、途中でちゃんと3枚おろしにされているか確認すべく、除外項目を表示できるよう「general-template.php」の中に既存の検索のものを流用して独自関数を作ってしまいましたが、PHP及びSQLを本格的に始めてたかが5ヶ月目の人間が、除外検索を作れたとは、なかなか面白い展開だと思います。

なお、Wordpressの検索はカスタムフィールドなどを除く全投稿タイプ検索ですので、queryループ前に除外条件を付ける場合は、必ず
【<?php
global $query_string;
query_posts($query_string . "&post_type=post");
?>】(ページを除外し、投稿のみの例)
のように、対象の絞り込みを行なえば汎用的に使えます。

アップデートの場合に消される危険性が高いので、常時ローカルに当該部分の差分バックアップを忘れなければ、結構使えると思います。

なお、余談ですが、Adminメニューが一部消えている現象が発生して、何かがバグったのか!?と焦ったものの、よくよく思い返してみるに、昨日の夜誤って【languages】ディレクトリを上げてしまい、それをキャンセルしたものの、アップロードが止まらない中でDreamWeaverがフリーズを起こし、中途半端な状態で上がったために発生したものでした。
何かフリーズした場合は、上げ直すのも方策です。
それでこのトラブルは解決しました。


※実物はまだテスト環境にあるため、仮に自サイトに設置してみました。
環境は同じくWP3.3.1です。


同じカテゴリー(Web制作・SEO関係)の記事画像
高校の成績グラフ、ほぼ完成
予想外に大苦戦し、まだ一山残る
データのアウトプットもまた面倒
DB・MySQLとの戦いは一旦終了
前職を彷彿とさせるニュースも耳にしつつ作業大詰め
スケジュール表機能構築完了までもう少し
同じカテゴリー(Web制作・SEO関係)の記事
 7年ぶりにExcelのマクロを組む (2016-04-06 22:33)
 自社サイトの運用レベル向上策展開中 (2015-03-27 23:50)
 SSLサーバ証明書の2016年問題に対応中 (2014-12-03 20:55)
 今週末は変則的なスケジュール (2014-07-28 23:54)
 OpenSSL脆弱性の対応に追われる (2014-04-12 20:15)
 前職で作ったサイトが地元紙で紹介される (2014-03-28 21:38)

※このブログではブログの持ち主が承認した後、コメントが反映される設定です。
上の画像に書かれている文字を入力して下さい
 
<ご注意>
書き込まれた内容は公開され、ブログの持ち主だけが削除できます。

削除
ある意味奇跡!!Wordpressのキーワード除外検索成功!
    コメント(0)