**msearch.inc.php [#z848cbb3]
|RIGHT:100|LEFT:360|c
|~サマリ|複数のPukiWikiサイトを一度に検索するコマンド|
|~リビジョン|0.3|
|~対応バージョン|1.4|
|~投稿者|[[sha]]|
|~投稿日|&new{2003-08-24 (SUN) 19:03:29};|
*** 概要 [#qe882d52]
-複数のPukiWikiサイトを一度に検索し、その結果をマージして表示
-検索結果は、ファイルの経過時間順(デフォルト)に表示。最近のものほど上に。

#contents
*** 説明 [#w4b37d5b]
-「[[欲しいプラグイン/22]]」を受けて作成。
-コマンド型だけなので、#lookupとの併用がお薦め。
-複数のPukiWikiサイトの検索を順番に実行するので、時間がかかります。具体的には、各PukiWikiサイトで''./?cmd=search&word=...''を実行して結果を得ます。
-skinの影響を受けないように作ったつもり(たぶん)。ただし、XHTMLの記述を正規表現で解釈してるので、''html.php''の''catbody()''関数の表示仕様が変更されると、そのサイトの検索結果は検出できなくなる可能性があります。
-下部に「…を含むページは''1658''ページ中、…」として表示される検索対象とした総ページ数は、検索結果が0だったサイトからは得られないのでカウントされません。
-強調表示の際に使われる文字の背景色は、''skin/default.ja.css''の''strong.word0''~''strong.word9''を順に使用している。これを修正することでその背景色を変更できる。
-XHTML1.1 validation check済み。
-ここで実験しています→「[[sha:msearch.inc.php]]」
*** 使用法 [#k70d28b5]
-引数の仕様
  ./?plugin=msearch&site=<site>&type=<type>&order=<order>&word=<word> 
-引数の意味
 <word>: キーワード。複数の場合、空白区切り(すなわち「%20」区切り)で並べる。
 <type>: "AND"または"OR"の文字列。キーワードの扱い。省略時は"AND"動作
 <order>: ソート順。詳細は下記の通り。
 <site>: PukiWikiサイトのURLをカンマ区切りで並べる。詳細は下記の通り
-<order>の仕様
 <order>:= [-]past|[-]site|[-]page のいずれかを指定
 past: 経過時間(若い)順  -past: その逆順
 site: サイト指定の引数順  -site: その逆順
 page: ページ名の順        -page: その逆順
-<site>の仕様
 <site>:= <url>(<kanji_code>),...
 <url>: PukiWikiサイトのURL。"/"で終端。
        "this"文字列を指定した場合、本コマンドを実行したサイト(自サイト)。
 <kanji_code>: そのサイトが受け付ける漢字コード(euc|sjis|utf8)。
        "()"で囲ってURLの直後に付ける。省略時は自サイトと同じコードを使う。
 複数のサイトのURLをカンマ(",")区切りで並べる。
--漢字コードは、mb_convert_encoding()の引数に使える漢字コード名。ただし、EUC-JP|SJIS|UTF-8については、それぞれeuc|sjis|utf8も利用できる。
*** 使用例 [#p49dfefa]
-#lookupとの併用の手順
++InterWikiNameに登録する。(実際には改行しない)
 -[./?plugin=msearch&site=this(euc),http://pukiwiki.sourceforge.jp/(utf8),
 http://pukiwiki.sourceforge.jp/dev/(euc)&type=AND&order=past&word= msearch]
++あるページに下記のように記載する。
 #lookup(msearch,マルチ検索) 
++あとは、テキストフィールドにキーワードを並べて、「マルチ検索」ボタンを押すだけ。
*** 表示例 [#j7f2f058]
-「''マルチ''」というキーワードで検索した例。
-下記[1]のサイトは「質問箱/203([[Q&Aに移動>Q&A/運営#n45d1cd2]])」の「検索結果+最初の見出し」の出力を採用しているので、下記の出力の2行目でも表示されている。
-もちろん、ページ名をクリックすると、それぞれのサイトのそのページへ行く。
-[1]などをクリックすると、それぞれのサイトのトップページへ。
#hr
>
これらのキーワードがハイライトされています: &color(black,#FFFF66){''マルチ''};
~&color(black,#FFFF66){''[1]''};http://project.chu.jp/sha/ ~
&color(black,#A0FFFF){''[2]''};http://pukiwiki.sourceforge.jp/~
&color(black,#99FF99){''[3]''};http://pukiwiki.sourceforge.jp/dev/~
#hr
>>
経過時間順
-&color(black,#A0FFFF){''[2]''}; 自作プラグイン/msearch.inc.php (21m)
-&color(black,#FFFF66){''[1]''}; [[msearch.inc.php>sha:msearch.inc.php]] (49m)  複数PukiWikiサイトからの同時検索
-&color(black,#99FF99){''[3]''}; [[雑談>dev:雑談]] (1d)
-&color(black,#A0FFFF){''[2]''}; PukiWiki/インストール/1.3系列 (23d)
-&color(black,#A0FFFF){''[2]''}; mbstring (45d)
-&color(black,#A0FFFF){''[2]''}; 質問箱/195 (46d)
-&color(black,#99FF99){''[3]''}; [[BugTrack/296>dev:BugTrack/296]] (49d)
-&color(black,#A0FFFF){''[2]''}; 欲しいプラグイン/27 (55d)
-&color(black,#A0FFFF){''[2]''}; PukiWiki/ケータイでPukiWiki/1.3.3の改造 (60d)
-&color(black,#A0FFFF){''[2]''}; 田邉鉄 (63d)
-&color(black,#A0FFFF){''[2]''}; 質問箱/50 (67d)
-&color(black,#A0FFFF){''[2]''}; 質問箱/112 (67d)
-&color(black,#99FF99){''[3]''}; [[開発日記/2003-05-26>dev:開発日記/2003-05-26]] (86d)
-&color(black,#99FF99){''[3]''}; [[BugTrack/191>dev:BugTrack/191]] (129d)
-&color(black,#99FF99){''[3]''}; [[AutoLink>dev:AutoLink]] (159d)
-&color(black,#99FF99){''[3]''}; [[BugTrack/32>dev:BugTrack/32]] (176d)
-&color(black,#99FF99){''[3]''}; [[開発日記/2003-02-22>dev:開発日記/2003-02-22]] (182d)
<<
~&color(black,#FFFF66){''マルチ''}; のすべてを含むページは ''1658'' ページ中、 ''17'' ページ見つかりました。
<
*** ダウンロード [#s7a9a730]
ここに添付しました。御利用下さい。
-「&ref(msearch.inc.php.3);」←提供中
|CENTER:||c
|リビジョン|	内容|h
|v0.3|order引数(ソート順)対応|
|v0.2|結果表示の変更(カラフルに)|
|v0.1|新規作成。debug|
*** アンケート [#c586a8e1]
-このプラグインに満足しておりますか?
#vote(はい[18],いいえ[4])
|BGCOLOR(#FFCCCC):''選択肢''|BGCOLOR(#FFCCCC):''投票''|
||RIGHT:|c
|BGCOLOR(#EEF5FF):はい|BGCOLOR(#EEF5FF):18|
|BGCOLOR(#DDE5FF):いいえ|BGCOLOR(#DDE5FF):4|
-「いいえ」に投票した方に質問です。~
どのような修正を加えれば、よくなると思いますか?下記にコメントして下さい。
*** コメント [#j2dda98d]
-[[upk]] &new{2003-09-15 (MON) 17:48:07};
~どっちにも投票なんぞしてないけど、ちょっと。黄水緑という配色も、Google ToolBar の色合いに慣れている人もいれば、と色々と思いますので、config でサイト管理者が定義できるようにするとか、という工夫があるとまた良いんじゃないでしょうかね。
--[[sha]] &new{2003-09-15 (MON) 18:53:50};
~実は最初からそうできるようになっております。msearch.inc.phpでは色の定義は何もしてなくて、PukiWikiの単語検索で使われるskin/default.ja.cssのstrong.word0からstrong.word9を順に使用しているだけです。ここを修正することで色を変更することが出来ます。もちろん従来の単語検索の単語の色まで変わってしまいますが。。。確かに手抜きと言われればそうなのですが、よいアイデアが無かったもので。
---[[upk]] &new{2003-09-16 (TUE) 01:55:56};
~仕様は了解しました。
---[[sha]] &new{2003-09-17 (WED) 00:24:42};
~この件を上の説明にも記載しておきました。
-[[こうすけ]] &new{2003-12-16 (TUE) 21:44:12};
~はじめまして。スキンに埋め込む形でmsearchを使いたいのですが、どのようにしたらいいでしょうか。例えば、このページのトップにある「移動」のような形にです。ご教授、どうかよろしくお願い致します。
--[[sha]] &new{2004-02-02 (MON) 01:20:36};
~[[使用例>#p49dfefa]]の「#lookupとの併用の手順」がまさにそれを実現するための説明です。ご覧下さい。
--質問の意味を理解しました→「質問箱/226([[Q&Aに移動>Q&A/デザイン・CSS#k9c542c0]])」をご参照ください。&amp;online;をスキンに埋め込む例が出ています。同様に前述の#lookupを埋め込んでください。 -- [[sha]] &new{2004-08-30 (月) 18:29:18};
-[[manbo]] &new{2004-05-21 (FRI) 10:46:13};
~2バイト文字検索をすると、「経過時間順」欄が表示されません。1バイトでは表示されます。文字コードを変えてみても同じでした。なぜでしょうか?
--症状が再現しません。もう少し情報を下さい。そういえば、「経過時間順」欄が表示されない状況というのは検索結果が0個の場合に起こりえます。InterWikiNameのサイトの設定や漢字コードの設定が間違っていると検索結果が0個になることがあるかもしれません。 -- [[sha]] &new{2004-08-30 (月) 18:47:15};
-[[続・質問箱/591]] --  &new{2005-02-06 (日) 14:02:07};
-[[dev:BugTrack/796]] --  &new{2005-02-06 (日) 14:17:28};
-UL・LIタグが出力されていますが、小文字にしておいた方がいいのでは? XHTMLでは大文字と小文字は別の要素とみなされますので(e.g. CSSのul要素への指定が無効になるなど) -- [[leva]] &new{2005-03-30 (水) 05:16:04};
-最新版(Ver.1.4.5)の「search.inc.php」だと正常動作しないようです(恐らくsearch.inc.phpのバグ?)、pukiwiki-1.4.4_php5のsearch.inc.phpだけをプラグインフォルダにコピーすると動作するようになりました。 -- [[あとむ]] &new{2005-07-06 (水) 15:53:44};
-私も『最新版(Ver.1.4.5)の「search.inc.php」』では動作しませんでした。1.4.4_php5のsearch.inc.phpで動作しました。 -- [[尚志]] &new{2005-09-20 (火) 11:50:38};
- 1.4.5のsearch.inc.phpがデフォルトでGET経由の検索を禁止しているからのようです。編集できるのであれば、search.inc.phpの頭に 'PLUGIN_SEARCH_DISABLE_GET_ACCESS' という変数を設定しているところがあるので、それを0にすれば良いようです。根本的な解決としては、msearch.inc.phpがPOST methodを利用するようにすることでしょうか・・・。 -- [[doi]] &new{2005-10-06 (木) 17:42:43};
-「You don't have permission to access /pukiwiki/ on this server.」というエラーが出てしまうのですが、原因は何でしょう?
--PukiWiki(pukiwiki1.4.5_1)そのものは動作し、通常のsearch.inc.phpは使えています。
--win2k+Apache/1.3.33 (Win32) PHP/4.4.0 です。
--/pukiwiki/フォルダにある.htaccessの記述は、allow from allになっています。
--アドレス部には、http://svr01/pukiwiki/?plugin=msearch&site=this(euc),http://pukiwiki.・・・が表示されています。 -- [[sts]] &new{2005-11-01 (火) 17:31:44};
- 関連: [[質問箱3/437]] PukiWiki-1.4.7で検索結果が表示されない。 -- [[teanan]] &new{2006-07-19 (水) 01:30:39};
- ↑plugin_msearch_parse_html 内の正規表現で非互換が出てるようです。通りすがりです。 -- [[スプー]] &new{2006-08-25 (金) 19:12:11};
- はじめまして。lookupプラグインを用いて検索フォームを実現する場合、検索対象のurlが極端に多くなった時にエラーになります。これはlookup側の仕様でしょうか?(現状で検索対象40サイト、site=部分で2,000byte以上あります)。PKWK_QUERY_STRING_MAXは0(無効)にしてあります。・・・ブラウザの制限か?という気もしてきました(汗 -- [[スプー]] &new{2006-08-25 (金) 19:18:44};
- 実際に、PukiWiki Plusに導入してみました。が、やはりURI制限に引っかかるようですね。「Error message : InterWiki URL too long: 605 characters」というエラーメッセージがでます。ファイル名のサーバーの制限によるものでしょうか?何かいい回避策はないでしょうか?導入した環境はこちらです。http://windows-keitai.com/ -- [[KATSUO]] &new{2007-04-19 (木) 23:17:42};
- 上記にて実際に実装していますが、検索後、検索結果の下にでる再検索ボタンをおすと、なぜかパラメーターが渡されず、白いページが表示されてしまいます。なんででしょう・・・ -- [[KATSUO]] &new{2007-04-20 (金) 01:30:19};
- 自己レスです。再検索のパラメーターの件ですが、InterWikiNameの記述にて「,」を1つ多く書いていました。解決しました。 -- [[KATSUO]] &new{2007-04-20 (金) 02:10:48};

//#comment

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Site admin: PukiWiki Development Team

PukiWiki 1.5.3+ © 2001-2020 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u12. HTML convert time: 0.070 sec.

OSDN