Был(а) онлайн: 19.02.19 19:46
Umen 24 года |
||||
![]() |
Регистрация: 24.07.2012 - 12:13 1.0 Был(а) онлайн: 19.02.19 19:46 |
Недавно |
Тендер на разработку системы поиска на ZendFramework.
Предлагайте сразу стоимость и сроки.
Система поиска и агрегирования тематического материала:
Требования к системе:
1. Система должна обеспечивать непринужденно поиск по каждым источникам сайта.
2. В Системе должна быть предусмотрена вероятность поиска в тематических разделах сайта отдельно от основного поиска.
3. Должна быть вероятность публикации блока тематических ссылок для материалов (новости, публикации и т.д.). (в задачу Поиска входит обзор и подбор материалов, особенно близких по релевантности для всей публикации)
4. Теги - тематические слова-синонимы для заданных групп.
Предлагаемый алгорифм образования данных поиска:
Во время публикации материала происходит переиндексация индексной базы поиска, при этом производится выделение и запись базы слов для данного материала, которые будут применяться для подбора тематического материала. Единовременно добавляется материал в базу поиска определенного раздела. Единовременно с этим мы обращаемся к базе данных к таблице тегов и выбираем список подходящих к поиску тегов выводим данный список всплывающим окном редактору, в данном окне располагается список предложенных подходящих тегов, строка ввода новых тегов а также список обнаруженных в тексте существительных присутствующих в нужной плотности, редактор может добавить из обнаруженных слов/добавить новые/удалить/ недостающие по смыслу теги и сберечь итог в базу тегов и в индексный файл. Помимо того теги будут использованы в качестве метатега keywords.
Конструкция таблиц для хранения тегов:
CREATE TABLE `tags_tags`
(
`id` int (10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'Уникальный идентификатор',
`tag` varchar (20) DEFAULT NULL COMMENT 'Значение тега',
`type` int (10) UNSIGNED DEFAULT NULL COMMENT 'Тип ресурса',
`descr` varchar (255) DEFAULT NULL COMMENT 'Описание (не непременный)',
`url` varchar (100) DEFAULT NULL COMMENT 'ссылка (не непременный)',
`alias_id` int (10) UNSIGNED DEFAULT '0' COMMENT 'Идентификатор алиаса',
`count_terms` int (10) UNSIGNED DEFAULT '0' COMMENT 'Количество данных слов',
PRIMARY KEY (`id`)
)
ENGINE=MYISAM
DEFAULT charSET=cp1251 COMMENT 'Таблица массив тегов';
CREATE TABLE `types` (
`id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'Уникальный идентификатор типа ресурса',
`name` varchar(20) DEFAULT NULL COMMENT 'наименование',
`descr` varchar(200) DEFAULT NULL COMMENT 'Описание',
PRIMARY KEY (`id`)
) ENGINE=MYISAM DEFAULT charSET=cp1251 COMMENT='таблицу-справочник типов материалов(источников)';
Также должен быть предусмотрен механизм обновления индексной базы.
Непременное требование: документация.
Для поиска предлагаю применять Zend_Search_Lucene.