plugin/search.inc.phpの単語検索で、全角スペースが単語の区切りと認識されず、それを含めた1語として検索をかけてしまいます。
--- func.php.orig Sat Aug 7 00:39:52 2004 +++ func.php Thu Nov 11 10:06:10 2004 @@ -175,6 +175,7 @@ $retval = array(); $b_type = ($type == 'AND'); // AND:TRUE OR:FALSE + $word = mb_convert_kana($word, "s"); $keys = get_search_words(preg_split('/\s+/', $word, -1, PREG_SPLIT_NO_EMPTY)); $_pages = get_existpages();
こうするといちおう解決できそうですが、
と、いまひとつです。もう少しいい案はないでしょうか。
plugin/search.inc.php 18行目付近 if ($s_word != '') { + $vars['word'] = mb_convert_kana($vars['word'], "s"); $msg = str_replace('$1',$s_word,$_title_result); $body = do_search($vars['word'],$type); }
とりあえず現状を「仕様」とするのかが判断できないので、コアなメンバーさんのコメントをいただきたいところであります。 -- よっちい 2004-11-11 (木) 19:16:24
--- search.inc.php.orig Sat Jul 31 12:09:20 2004 +++ search.inc.php Fri Nov 12 09:16:23 2004 @@ -10,7 +10,20 @@ global $script,$vars; global $_title_result,$_title_search,$_msg_searching,$_btn_and,$_btn_or,$_btn_search; - $s_word = array_key_exists('word',$vars) ? htmlspecialchars($vars['word']) : ''; + if(array_key_exists('word',$vars)) + { + if(LANG == 'ja') + { + $vars['word'] = mb_convert_kana($vars['word'], "s"); + } + + $s_word = htmlspecialchars($vars['word']); + } + else + { + $s_word = ''; + } + $type = array_key_exists('type',$vars) ? $vars['type'] : ''; if ($s_word != '')ということになりました。 -- よっちい 2004-11-12 (金) 09:27:33
if ($s_word != '') { + switch (LANG) { + case 'ja': + $vars['word'] = mb_convert_kana($vars['word'], 's'); + $s_word = mb_convert_kana($s_word, 's'); + break; + } // Search $msg = str_replace('$1', $s_word, $_title_result); $body = do_search($vars['word'], $type, FALSE, $base); } else { // Init unset($vars['word']); // Stop using $_msg_word at lib/html.php $msg = $_title_search; $body = '<br />' . "\n" . $_msg_searching . "\n"; } // Show search form2004-11-12のよっちいさんの案を参考にしました。 -- 2010-06-01 (火) 18:15:36
Fatal error: Call to undefined function mb_convert_kana() in /格納場所/search.inc.php on line 52で
$vars['word'] = mb_convert_kana($vars['word'], 's');の部分です。素人ですいませんが、わかりましたらご教授ください。-- idea 2010-06-03 (木) 08:57:55