А разве такой бывает?natali писал(а):у кого есть хороший search_stopwords.txt
То, что хорошо одному, может не устраивать другого ...
Чтобы тюнить под свои потребности, нужно иметь мезанизмы для анализа слов в базе. Вот я давно спрашивал: "Как получить таблицу слов на форуме с их количеством?". Ответа не было.natali писал(а):А под свои потребности каждый может сам натюнить ))
Может быть так?Admin_777 писал(а):Как получить таблицу слов на форуме с их количеством?
Код: Выделить всё
SELECT ls.word_id, ls.word_text, COUNT(wm.word_id) as entries FROM `fack_you__search_wordlist` as ls LEFT JOIN `fack_you__search_wordmatch` as wm ON ls.word_id=wm.word_id GROUP BY wm.word_id ORDER BY entries DESC LIMIT 0,50
Код: Выделить всё
<?php
$entry = 'Наглядно - одна э из причин попадания “левых“ слов в в поисковые таблицы ну пробуембольшоетестовоеслово и ddadadahahahahahahahahaha ho-hoh-ohhhhhhh-ooo-h-o а теперь мелкие »»» и и и еще во во во-т таких ’много ”много”... ;)';
// Далее код выдранный из phpBB
static $drop_char_match = array('^', '$', '&', '(', ')', '<', '>', '`', '\'', '"', '|', ',', '@', '_', '?', '%', '-', '~', '+', '.', '[', ']', '{', '}', ':', '\\', '/', '=', '#', '\'', ';', '!');
static $drop_char_replace = array(' ', ' ', ' ', ' ', ' ', ' ', ' ', '', '', ' ', ' ', ' ', ' ', '', ' ', ' ', '', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ' , ' ', ' ', ' ', ' ', ' ', ' ');
$entry = ' ' . strip_tags(strtolower($entry)) . ' ';
// Replace line endings by a space
$entry = preg_replace('/[\n\r]/is', ' ', $entry);
// HTML entities like
$entry = preg_replace('/\b&[a-z]+;\b/', ' ', $entry);
// Remove URL's
$entry = preg_replace('/\b[a-z0-9]+:\/\/[a-z0-9\.\-]+(\/[a-z0-9\?\.%_\-\+=&\/]+)?/', ' ', $entry);
// Quickly remove BBcode.
$entry = preg_replace('/\[img:[a-z0-9]{10,}\].*?\[\/img:[a-z0-9]{10,}\]/', ' ', $entry);
$entry = preg_replace('/\[\/?url(=.*?)?\]/', ' ', $entry);
$entry = preg_replace('/\[\/?[a-z\*=\+\-]+(\:?[0-9a-z]+)?:[a-z0-9]{10,}(\:[a-z0-9]+)?=?.*?\]/', ' ', $entry);
//
// Filter out strange characters like ^, $, &, change "it's" to "its"
//
for($i = 0; $i < count($drop_char_match); $i++)
{
$entry = str_replace($drop_char_match[$i], $drop_char_replace[$i], $entry);
}
$entry = str_replace('*', ' ', $entry);
$entry = preg_replace('/[ ]([\S]{1,2}|[\S]{21,})[ ]/',' ', $entry);
echo $entry;
echo '<br><br>Хотите примеров - их есть у меня :)';
?>
Ты плохо искал.Admin_777 писал(а):Вот я давно спрашивал: "Как получить таблицу слов на форуме с их количеством?". Ответа не было.
Код: Выделить всё
## MOD Title: reindex_mod
## MOD Author: Atrus2 < lrngate@yandex.ru > (N/A) N/A
## MOD Description: This mod will cleanup and rebuild your serach tables.
## MOD Version: 1.0.1
##
## Installation Level: Easy
## Installation Time: 2 Minutes
Переиндексирование
0% 0% 0%
Закончится через: n/a
0%
Обработано 0/25462 записей.
Количество запросов: 0. Текущий post_id: 2
Нажмите, если страница не начнёт перезагружаться автоматически, через 1 сек.
Powered by phpBB 2.0.18 © 2001 phpBB Group
Почистить от чего?IGO писал(а):И вот ещё, как почистить таблицы?
Должен отображаться процесс переиндексации.IGO писал(а):закинул в корень и выполнил. И как узнать что подействовало?
Закинуть их в директорию /language/lang_russian/ или в соответствующего языка.IGO писал(а):что делать с search_stopwords.txt и search_synonyms.txt
Спасибо, нашел в этой теме много чего полезного. Жаль, что не тогда, когда это было очень актуально. Но лучше позже, чем никогдаJovani писал(а):Ты плохо искал.
Эти ответы опубликованы:
http://www.phpbbguru.net/community/viewtopic.php?t=440