Topic: Мод: похожие темы на форуме
Этот небольшой простой мод поможет вывести похожие темы в топиках. Скрипт получает массив тем форума или форумов, сравнивает с темой и выводит список похожих тем. Можно настроить чувствительность и количество выводимых тем.
if (FORUM_PAGE == 'viewtopic')
{
$forum_id = isset($cur_topic['forum_id']) ? $cur_topic['forum_id'] : '*';
// $forum_id = '*'; //Раскомментируйте, чтобы искать везде и закомментируйте выше
$query = array(
'SELECT' => 'id, subject',
'FROM' => 'topics',
'WHERE' => 'forum_id='.$forum_id
);
$result = $forum_db->query_build($query) or error(__FILE__, __LINE__);
$forum_config_num = '5'; //Количество тем в списке
$sim_count = 0;
$res = array();
while($fetch_subject = $forum_db->fetch_assoc($result) )
{
$res[] = $fetch_subject;
$row = $fetch_subject['subject'];
similar_text(utf8_strtolower($row), utf8_strtolower($cur_topic['subject']), $part);
$similarity_part = floor($part);
$uniqueness = 70; //Чувствительность
if ($similarity_part > $uniqueness) {
if($id != $fetch_subject['id'] && $sim_count < $forum_config_num) {
echo '<p>'.$similarity_part.' % в теме <a href="'.forum_link($forum_url['topic'], array($fetch_subject['id'], sef_friendly($cur_topic['subject']))).'" target="_blank">'.$fetch_subject['subject'].'</a></p>';
$sim_count++;
}
}
}
}
Я написал комментарии, чтобы можно было проще настроить мод.