Функции mnogosearch


LXI. mnoGoSearch Functions

These functions allow you to access the mnoGoSearch (former UdmSearch) free search engine. mnoGoSearch is a full-featured search engine software for intranet and internet servers, distributed under the GNU license. mnoGoSearch has a number of unique features, which makes it appropriate for a wide range of applications from search within your site to a specialized search system such as cooking recipes or newspaper search, FTP archive search, news articles search, etc. It offers full-text indexing and searching for HTML, PDF, and text documents. mnoGoSearch consists of two parts. The first is an indexing mechanism (indexer). The purpose of the indexer is to walk through HTTP, FTP, NEWS servers or local files, recursively grabbing all the documents and storing meta-data about that documents in a SQL database in a smart and effective manner. After every document is referenced by its corresponding URL, meta-data is collected by the indexer for later use in a search process. The search is performed via Web interface. C, CGI, PHP and Perl search front ends are included.

More information about mnoGoSearch can be found at http://www.mnogosearch.ru/ .

Note: This extension is not available on Windows platforms.

In order to have these functions available, you must compile PHP with mnoGosearch support by using the —with-mnogosearch option. If you use this option without specifying the path to mnoGosearch, PHP will look for mnoGosearch under /usr/local/mnogosearch path by default. If you installed mnoGosearch at a different location you should specify it: —with-mnogosearch=DIR .

Note: PHP contains built-in MySQL access library, which can be used to access MySQL. It is known that mnoGoSearch is not compatible with this built-in library and can work only with generic MySQL libraries. Thus, if you use mnoGoSearch with MySQL, during PHP configuration you have to indicate the directory of your MySQL installation, that was used during mnoGoSearch configuration, i.e. for example: —with-mnogosearch —with-mysql=/usr .

This extension has no configuration directives defined in php.ini .

The constants below are defined by this extension, and will only be available when the extension has either been compiled into PHP or dynamically loaded at runtime.

mnoGoSearch Functions

Introduction

These functions allow you to access the mnoGoSearch (former UdmSearch) free search engine. mnoGoSearch is a full-featured search engine software for intranet and internet servers, distributed under the GNU license. mnoGoSearch has a number of unique features, which makes it appropriate for a wide range of applications from search within your site to a specialized search system such as cooking recipes or newspaper search, FTP archive search, news articles search, etc. It offers full-text indexing and searching for HTML, PDF, and text documents. mnoGoSearch consists of two parts. The first is an indexing mechanism (indexer). The purpose of the indexer is to walk through HTTP, FTP, NEWS servers or local files, recursively grabbing all the documents and storing meta-data about that documents in a SQL database in a smart and effective manner. After every document is referenced by its corresponding URL, meta-data is collected by the indexer for later use in a search process. The search is performed via Web interface. C, CGI, PHP and Perl search front ends are included.

More information about mnoGoSearch can be found at » http://www.mnogosearch.org/.

This extension has been moved to the » PECL repository and is no longer bundled with PHP as of PHP 5.1.0.

This extension is not available on Windows platforms.

Requirements

Download mnoGosearch from » http://www.mnogosearch.org/ and install it on your system. You need at least version 3.1.10 of mnoGoSearch installed to use these functions.

Installation

In order to have these functions available, you must compile PHP with mnoGosearch support by using the —with-mnogosearch option. If you use this option without specifying the path to mnoGosearch, PHP will look for mnoGosearch under /usr/local/mnogosearch path by default. If you installed mnoGosearch at a different location you should specify it: —with-mnogosearch=DIR .

Information for installing this PECL extension may be found in the manual chapter titled Installation of PECL extensions. Additional information such as new releases, downloads, source files, maintainer information, and a CHANGELOG, can be located here: » http://pecl.php.net/package/mnogosearch.

PHP contains built-in MySQL access library, which can be used to access MySQL. It is known that mnoGoSearch is not compatible with this built-in library and can work only with generic MySQL libraries. Thus, if you use mnoGoSearch with MySQL, during PHP configuration you have to indicate the directory of your MySQL installation, that was used during mnoGoSearch configuration, i.e. for example: —with-mnogosearch —with-mysql=/usr .

Runtime Configuration

This extension has no configuration directives defined in php.ini .

Resource Types

Predefined Constants


The constants below are defined by this extension, and will only be available when the extension has either been compiled into PHP or dynamically loaded at runtime.

Table of Contents

udm_add_search_limit — Add various search limits udm_alloc_agent_array — Allocate mnoGoSearch session udm_alloc_agent — Allocate mnoGoSearch session udm_api_version — Get mnoGoSearch API version udm_cat_list — Get all the categories on the same level with the current one udm_cat_path — Get the path to the current category udm_check_charset — Check if the given charset is known to mnogosearch udm_check_stored — Check connection to stored udm_clear_search_limits — Clear all mnoGoSearch search restrictions udm_close_stored — Close connection to stored udm_crc32 — Return CRC32 checksum of given string udm_errno — Get mnoGoSearch error number udm_error — Get mnoGoSearch error message udm_find — Perform search udm_free_agent — Free mnoGoSearch session udm_free_ispell_data — Free memory allocated for ispell data udm_free_res — Free mnoGoSearch result udm_get_doc_count — Get total number of documents in database udm_get_res_field — Fetch a result field udm_get_res_param — Get mnoGoSearch result parameters udm_hash32 — Return Hash32 checksum of gived string udm_load_ispell_data — Load ispell data udm_open_stored — Open connection to stored udm_set_agent_param — Set mnoGoSearch agent session parameters

LXXIV. mnoGoSearch Functions

These functions allow you to access the mnoGoSearch (former UdmSearch) free search engine. mnoGoSearch is a full-featured search engine software for intranet and internet servers, distributed under the GNU license. mnoGoSearch has a number of unique features, which makes it appropriate for a wide range of applications from search within your site to a specialized search system such as cooking recipes or newspaper search, FTP archive search, news articles search, etc. It offers full-text indexing and searching for HTML, PDF, and text documents. mnoGoSearch consists of two parts. The first is an indexing mechanism (indexer). The purpose of the indexer is to walk through HTTP, FTP, NEWS servers or local files, recursively grabbing all the documents and storing meta-data about that documents in a SQL database in a smart and effective manner. After every document is referenced by its corresponding URL, meta-data is collected by the indexer for later use in a search process. The search is performed via Web interface. C, CGI, PHP and Perl search front ends are included.

More information about mnoGoSearch can be found at http://www.mnogosearch.org/ .

Note: This extension is not available on Windows platforms.

In order to have these functions available, you must compile PHP with mnoGosearch support by using the —with-mnogosearch option. If you use this option without specifying the path to mnoGosearch, PHP will look for mnoGosearch under /usr/local/mnogosearch path by default. If you installed mnoGosearch at a different location you should specify it: —with-mnogosearch=DIR .

Note: PHP contains built-in MySQL access library, which can be used to access MySQL. It is known that mnoGoSearch is not compatible with this built-in library and can work only with generic MySQL libraries. Thus, if you use mnoGoSearch with MySQL, during PHP configuration you have to indicate the directory of your MySQL installation, that was used during mnoGoSearch configuration, i.e. for example: —with-mnogosearch —with-mysql=/usr .

This extension has no configuration directives defined in php.ini .

The constants below are defined by this extension, and will only be available when the extension has either been compiled into PHP or dynamically loaded at runtime.

Функции mnogosearch

поиск занимает не меньше 20 секунд. при чем без подключения испеловских словарей, с ними в 2-3 раза дольше поиск

Search for статьи. Search results: статьи : 1462 / 1462. Results 1-10 of 1180. Search took 19.410 seconds
Время выполнения: 21,1836

есть ли возможность убыстрить? или что-то надо подкрутить или формат данных изменить? Всего записей: 348 | Зарегистр. 21-12-2001 | Отправлено: 14:51 06-06-2004

AleXeyS55

Member

Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Что то тема смотрю заглохла, кто то нашол вариант получше?
Я сейчас с этим маюсь, нужно сделать поиск для локального сайта предприятия. И подвязать к Ораклу. А не получается.
Может кто нибудь помочь?
Всего записей: 227 | Зарегистр. 30-01-2006 | Отправлено: 15:46 21-07-2006
BigBoi

Newbie

Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Помогите с настройкой для винды. БД PostgreSQL 8.2 Таблицу с какими параметрами создавать?
Всего записей: 3 | Зарегистр. 14-05-2007 | Отправлено: 02:07 20-06-2007 | Исправлено: BigBoi, 02:11 20-06-2007
Cheery

.:МордератоР:.

Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору BigBoi

Цитата:

Таблицу с какими параметрами создавать?

под линух, но какая разница

Цитата:

Создаём пользователя и базу данных для mnoGoSearch:

# /bin/su — postgres
$ createuser searcher -W

-Разрешить новому пользователю создавать базы данных? (y/n)

-Разрешить новому пользователю создавать пользователей? (y/n)

-Пароль:

$ createdb -O searcher searchdb

Создание необходимых mnoGoSearch таблиц в этой базе:

$ psql -W -U searcher searchdb @localhost/searchdb/?dbmode=multi


Возможно также соединение через локальный socket (просто уберите
hostname):

DBAddr pgsql://searcher: @/searchdb/?dbmode=multi

качаешь линуховую версию — там есть sql файлы

Функции веб-сайтов

До этого мы рассматривали аспекты классификации веб-сайтов как по стадиям развития, так и по уровню вовлечения в электронный бизнес. Описывая эти типы мы поверхностно затрагивали тему функциональности.

Говоря о функциях сайтов нужно уточнить о чем конкретно идет речь. В веб-сайте как системе в общем случае можно выделить два компонента:

· сам веб-сайт (вывод данных, внешняя сторона, front-end);

· система управления сайтом (внутренняя сторона, управление, back-end).

Соответственно, функциональность этих компонентов стоит описывать раздельно. В данной главе мы остановимся на самих веб-сайтах, не касаясь систем управления, которые будут описаны в следующих главах. При этом функциональность сайта обычно напрямую связана с системой управления, так как большинство сервисов должно иметь поддержку в CMS. Однако, однозначного соответствия между функциональностью CMS и самого сайта нет, так как эти компоненты имеют разные аудитории пользователей:

1. веб-сайтом работает преимущественно для внешних пользователей (посетителей сайта, клиентов компании);

2. система управления сайтом функционирует для внутренних пользователей (сотрудников компании, администраторов сайта).

Исходя из такой классификации, опишем функциональность веб-сайтов. Отметим, что для реализации некоторых функций требуется наличие почтовой системы (может технически работать отдельно от сайта), что обычно имеет место.

Четкое понимание выполняемых сайтом функций лежит в основе успеха любого веб-проекта. Описание функциональности сайтов можно проводить с двух точек зрения: технической стороны и с точки зрения бизнеса.

С технической стороны веб-сайт представляет собой программный продукт и внедренное содержимое различных форматов. В каждом из сайтов можно выделить технологии, задействованные в его реализации, программные модули, дающие функциональность системе управления и прикладные приложения, дающие расширенные возможности сайту (например, форум, RSS-дайджест новостей и т.д.) Такая классификация функций сайта ограничена и используется при формировании подробных требований (технического заданий) к созданию веб-сайта. При этом, каждый разработчик по-своему выделяет значимые функции сайта, руководствуясь внутренними процессами компании или возможностями системы управления контентом. В случае описания функциональности сайта относительно CMS, функции соответствуют модулям системы или ее версиям. Приведем примеры функциональных единиц веб-сайта с минимальной привязкой к определенной CMS:

· интеграция с системой платежей;

· формы обратной связи;

· заказ товара/услуг с сайта;

· персональные разделы пользователей (персонализация);

· внутренняя банерная система;

· формы опросов общественного мнения;

· полнотекстовый поиск по сайту;

· специализированные инструменты поиска по каталогам/товарам/объектам;

· дополнительные сервисы подбора, расчета, демонстрации, сравнения товаров/услуг;

· функции продажи и доставки электронных товаров (лицензий, ключей, контента);


· система технической поддержки пользователей (обработка запросов и ведение базы знаний);

· механизм комментирования материалов сайта посетителями;

· наполнение контентом внешними пользователями.

Фотогалерея. представляет собой каталог изображений, выводящийся на отдельной странице сайта или в разных разделах. Обычно есть возможность хранения и показа нескольких версий картинок — миниатюры и большой версии. Картинки могут иметь текстовое описание. Возможна организация поиска по описаниям картинок, группировка по нескольким признакам (рубрика, время создания). В случае специальных требований картинки можно привязывать к другим объектам сайта — страницам, товарам, новостям, услугам и т.д.

Автоматизация вывода галерей позволяет делать удобным управление такими разделами, а также организовать единообразный и удобный показ больших версий картинок. Важно, чтобы большие версии открывались одинаково в различных браузерах, независимо от платформы и версии.

Форум. Также может называться «доска объявлений». Примитивной формой форума можно считать «гостевые книги». Гостевые книги морально устарели и не представляют интереса в современном аспекте. Форум это отдельное или интегрированное с CMS веб-приложение с возможностями ведения тем форума, структурированных по темам и разделам. Выглядит форум как особый раздел сайта. В зависимости от возможностей варианта форума, дизайн интерфейса может быть выполнен в одном стиле с другими шаблонами, либо выделяться своим оформлением. Как правило, форум имеет развитую систему прав доступа и модерацию. Модерация — это фильтрация и редактирование содержимого сообщений пользователей уполномоченными лицами (модераторами). Благодаря развитым возможностям современных форумов, с помощью них можно решать многие задачи по поддержке пользователей, общению посетителей сайта, проведению опросов, созданию базы знаний и консультациям клиентов. При этом, не все перечисленные функции следует реализовывать в форуме. Имеет смысл использовать это средство в случаях, когда поощряется общение между посетителями сайта, с возможным участием администрации. Для решения узких задач (как например, поддержка пользователей) существуют специализированные средства, наиболее точно отвечающие потребностям. При создании сайта стоит обратить пристальное внимание на анализ потребности в форуме, так как часто форумы на корпоративных сайтах простаивают без дела и заполнены спамом, что резко негативно сказывается на имидже владельца сайта. Вопрос спама в форумах стоит довольно остро, так как они используются для продвижения различных веб-сайтов, компаний в виде спам-ссылок и объявлений на самые разнообразные темы. Как правило, такие сообщения оставляют роботы, поэтому на любом форуме необходима защита от регистрации роботов — captcha (требование ввода кода с картинки) и внимательное отношение к правам незарегистрированных пользователей (гостей).

Лента новостей. Стандартная функциональность корпоративных сайтов обычно включает ведение новостного раздела. Новости — обычно короткие сообщения, имеющие основной текст, дату публикации и заголовок. Новости могут быть разбиты на группы. Основная задача новостной ленты — отражать значимые для клиентов компании события на сайте и придание актуальности всему сайту. Последнее поясним подробнее. Наличие стабильного и регулярного потока новостей показывает, что по крайней мере, сайт регулярно обслуживается и можно надеяться на то, что остальная информация на сайте также актуальна. Зачастую, учитывая этот факт, владельцы сайта используют сторонние потоки новостей RSS (RSS-feed). Однако, RSS не выполняет функции настоящей, собственной новостной ленты.

Как правило, новости на сайте присутствуют в нескольких представлениях. Первое — это дайджест, краткая форма новости в виде заголовка, даты публикации и необязательного краткого содержания и иллюстрации. Дайджест размещают на главной странице и иногда на внутренних страницах разделов. Второе — полная форма новостной ленты, где можно увидеть полный текст новости, фотографии, и (возможно) комментарии посетителей. Третье представление — поиск новостей по дате публикации, либо по содержимому. Результат поиска обычно похож на дайджест либо на полный вид новостной ленты.

Каталог товаров/услуг/объектов. Каталог товаров (услуг) является ядром продающего сайта. При всем разнообразии вариантов реализации этой функциональности, существуют общие моменты каталогов. Прежде всего задача любого каталога — максимально выгодно показать товар компании и побудить посетителя на покупку/заказ на сайте или в режиме оффлайн.

В первую очередь нужно определить состав свойств объектов (товаров, услуг, предложений) и возможные взаимосвязи. Например, характеристики товара:

Допустим, что есть лучшие товары, совместимые товары (коллекции товаров), связи между товарами (комплекты). Все эти взаимосвязи нужно описать и представить разработчику в качестве задания.

Следующий этап в создании каталога — проектирование представлений данных. Прежде всего это отражение структуры каталога (категории, разделы) и показ отдельных объектов (карточки товаров). Дополнительно можно организовать фильтры по свойствам (быстрый поиск) или полноценный поиск по каталогу.

Реализация каталога как веб-приложения вместо набора статических документов дает огромное превосходство в гибкости. Автоматизированный каталог позволяет использовать точный специализированный поиск по содержимому, удобно менять форму вывода рубрик и карточек товаров, внедрять новые возможности. При наличии на сайте функций заказа, каталог должен быть связан с формой заказа и передавать все необходимые данные. При отсутствии функциональности оплаты, каталог можно будет называть «интернет-витрина», с оплатой сайт уже может называться «интернет-магазином». От развития каталога товаров зависят базовые возможности компании в электронном бизнесе.

При активном продвижении магазина на системах поиска товаров типа Яндекс. Маркет или Рамблер-Покупки, от каталога будет требоваться возможность экспорта данных в специальном XML-формате этих систем. Такая функция значительно улучшит возможности привлечения покупателей на конкурентных рынках.

Интеграция с системой платежей. Интеграция с платежными системами позволяет создать интернет-магазин «полного цикла» — от выбора до оплаты товаров. Выбор платежной системы это важный этап в процессе интеграции, так как у каждой из них свои интерфейсы подключения к веб-магазинам и целесообразно использовать одну или две, не более, систем онлайн-платежей. Принципиально нужно обратить внимание на условия обслуживания в системе (комиссии на платежи, вывод денег), формы оплаты и вывода денег, надежность и репутацию системы.

Для пользователя интеграция с платежной системой выглядит как один из завершающих шагов заказа в веб-магазине. Обычно покупатель перенаправляется на специальный сайт оплаты (с использованием защищенного SSL-соединения), где за несколько шагов расстается с требуемой суммой и возвращается на сайт продавца.

При внедрении систем электронных платежей нужно учитывать настороженное отношение покупателей к такого рода системам, показать максимальный уровень безопасности и опираться на уважаемые платежные системы (возможно ваш покупатель имеет кошелек в одной из таких систем). В частности, такие системы зачастую не предоставляют официальных платежных документов. Основной аргумент платежных систем — репутация и доверие. Хотя, на самом деле, уровень безопасности платежей ничем не ниже, чем платежи по кредитным картам в банкомате (вообще, большинство платежей уже давно электронные). Опасливое отношение к платежным системам постепенно сходит на нет, но все еще присутствует в сознании интернет-пользователей. В силу этого обстоятельства область применения онлайн-платежей ограничивается небольшими суммами заказов, крупные платежи пользователи предпочтут делать в процессе получения товара.

Формы обратной связи. Это базовый элемент функциональности веб-сайтов, без которого сложно представить даже «сайт-визитку». Формы обратной связи предназначены для сбора некоторых сведений у посетителя сайта и отправки на почтовый адрес или сохранение в базе данных системы управления для последующего просмотра. Так как в форму обратной связи может писать любой посетитель (в этом ее смысл), здесь всплывает проблема спама. Дело в том, что некоторые формы обратной связи (в гостевых книгах) помещали комментарии пользователей прямо на страницу, в неизменном виде в автоматическом режиме. В связи с этим, поисковые спамеры используют роботов для публикации ссылок на продвигаемые сайты через все доступные формы на сайте («на удачу»). Для защиты от роботов можно использовать то же средство, что и для форумов — captcha (описано выше).

При всей внешней простоте, формы обратной связи это реально доступный и действующий инструмент электронного бизнеса. С помощью таких форм можно реализовать форму заказа услуг, послать вопрос в техническую поддержку, собрать пожелания заказчиков и так далее. Основная задача — это первый контакт с потенциальным клиентом в электронном виде. При чем, главным преимуществом форм обратной связи перед телефонным контактом является круглосуточная доступность сервиса.

В базовом варианте формы обратной связи просто заменяют открытые почтовые адреса на сайте (с целью защиты их от спама). В максимальном — содержат десятки разнообразных полей, часть из которых является обязательными. Такие формы склонны составлять недальновидные сотрудники компаний, рассуждающих в терминах реального мира: «мы дадим ему форму, а он никуда не денется и заполнит все поля, что нам нужны». В Интернете такой принцип не работает. В процессе планирования форм на сайте необходимо помнить о том, что более 5-6 полей в форме никто заполнять не будет (причина проста — лень и катастрофическая нехватка времени) и большая форма (от 10 полей) отпугнет потенциального клиента своей сложностью — в лучшем случае он попытается позвонить по телефону, в худшем — перейдет на сайт конкурентов. Ввиду указанных причин, следует создавать максимально простые и лаконичные формы, это значительно увеличит их эффективность.

Заказ товара/услуг с сайта. Заказ с сайта может быть реализован несколькими путями.

Простой способ — реализация с использованием форм обратной связи. В этом случае можно организовать независимые формы заказа, не привязанные к каталогу товаров или услуг (таковой может вообще отсутствовать). Заказы будут отправляться на почтовый ящик (ящики), указанный в настройках формы заказа. Возможно сохранение заказа в виде текста в БД сайта (для учета потери почты при пересылке). Однако, в таком случае скорее всего не будет четкой привязки к товару/услуге, так как заявка будет сформирована в свободной форме и это приемлемо лишь для компаний с сокращенной номенклатурой (до 10 видов продуктов).

Второй способ — интеграция с каталогом сайта. В этом случае заказ будет формироваться автоматически из карточки товара или результатов поиска по каталогу. Такой заказ может иметь более четкую форму — прямая связь с каталогом позволяет отслеживать состояние заказа, быстрее отправлять его в обработку и организовать интеграцию с корпоративной информационной системой компании.


Наиболее сложный вариант реализации заказов — возможность отслеживания статуса на сайте с использованием регистрации пользователя. К этому варианту можно добавить дополнительные возможности, например информирование о заказе с помощью SMS.

Авторизация пользователей. Регистрация и авторизация пользователей это вспомогательный сервис, который открывает широкие возможности расширения функциональности сайта.

Сервис включает в себя процесс регистрации пользователя (может быть как открытая, публичная, так и закрытая регистрация), авторизацию и аутентификацию. Общих подходов к авторизации не существует, так как набор закрытых разделов и требования к правам доступа могут быть различными.

Авторизация используется для работы веб-магазинов, форумов, сайтов с закрытыми разделами и системами взаимодействия с пользователями («личные кабинеты», «профили», «вход для клиентов»). Базовые основы авторизации просты: пользователь должен выбрать логин и пароль для себя (часто логином является его почтовый адрес), ввести email и некоторую дополнительную информацию (ФИО, город, адрес и т.д.), набор которой зависит от специфики сайта. Далее (опят же для защиты от спам-роботов) происходит подтверждение регистрации по email (на указанный в форме регистрации адрес приходит письмо с уникальной ссылкой подтверждения).

Персональные разделы пользователей (персонализация). Эта возможность зависит от наличия авторизации пользователей. Персонализация услуг и товаров является общей тенденцией и позволяет создать реальное конкурентное преимущество компании. Обращаясь к клиенту как к личности, давая ему возможности по изменению стандартных решений, учету индивидуальных особенностей, компания выражает ему свое уважение и доверие. Причем, такое внимание может быть реализовано в деталях, мелочах. Стоимость таких мер невысока, а эффект заметен. Все это справедливо и для веб-сайтов.

Персонализация сайта обычно заключается в наличии личных настроек, которые будут использованы при прохождении процедуры аутентификации. К таким настройкам относятся: стиль вывода блоков, подключение дополнительных информационных модулей, особенности навигации и так далее.

Наличие базы пользователей позволяет создавать персонализированные разделы. В таких разделах размещают информацию, предназначенную для одного или группы пользователей. Примером может служить раздел для магазинов (дилеров) на сайте дистрибьютора продукции, где дилеры могут получить информацию по индивидуальным условиям закупки товара, наличия на складе и состоянии своих заявок.

Персонализированные разделы позволяют использовать веб-сайт для различных задач электронного бизнеса: управление закупками, коммуникации в распределенной среде, координация сети предприятий, маркетинговые исследования.

Для принятия решения о необходимости персонализированных разделов необходимо обосновать потребность конечного пользователя в индивидуальных сервисах, подробно оценить аудиторию и сформулировать задачи разделов (аргументы вроде «было бы здорово писать на главной странице Здравствуй, Вася!» не подходят). Важно заметить, что любые формы персонализации будут востребованы только при повторных посещениях сайта, так как в первый раз посетитель скорее всего не будет тратить значительное время на регистрацию и изменение настроек сайта без уверенности в том, что он будет использовать этот сайт еще раз. Исходя из этого вывода, большинство продающих и имиджевых корпоративных сайтов не нуждаются в функциях персонализации. Только при наличии обоснованной необходимости персонализированные разделы могут принести положительные эффекты, в противном случае сайт обзаведется еще одним «мертвым» разделом, который будет ненавязчиво напоминать о недальновидности заказчиков сайта.

Информационные блоки. Под информационными блоками стоит понимать выделенные области с небольшими фрагментами контента, созданные для решения специальной задачи. Отличие информационных блоков от обычных страниц в том, что небольшие по размеру инфоблоки можно размещать в различных местах страницы (около навигации, в шапке сайта) и при этом легко управлять их выводом по времени и задействовать ротацию объявлений.

Область применения инфоблоков широка — от коротких новостных объявлений до внутренней рекламы товаров. В этом инфоблоки могут работать вместе функциональностью внутренней банерной системы. Основное преимущество таких блоков в простоте и оперативности составления, а также в высокой заметности для пользователей (инфоблоки можно показывать на целых разделах или на всем сайте в наиболее выгодных для этого местах). Редактирование информационных блоков также максимально упрощено за счет использования шаблонов оформления, то есть изменятся только текст, изменений в верстке блока или специального форматирования не требуется.

Основная задача заказчика на этапе создания сайта — это определить возможные области применения инфоблоков на разделах сайта и указать приоритеты для них: какие блоки должны быть более заметны, чем другие. Указание приоритета значительно облегчит формирования удобного дизайна сайта.

Внутренняя банерная система. Помимо внешних банерных систем, которые встраиваются в виде JavaScript-кода в страницы, существуют внутренние средства для рекламирования материалов сайта и создания точек входа.

Основное применение такие системы находят в связи с различными каталогами для продвижения продуктов. Другим случаем может быть представление портфолио компании, банерами будут являться ссылки на экземпляры (работы) в нем.

При использовании системы внутри, ее возможности не включает в себя функции биллинга. Тем не менее, некоторые особенности промышленных банерных систем стоит реализовать. Например, статистика по кликам по банерам будет полезна для оценки популярности продуктов, а также важным дополнением к общей статистике посещения сайта.

Дополнительной задачей внутренней банерной системы может стать размещение рекламы партнеров или внешних заказчиков. В такой ситуации на банерную систему сайта накладываются те же требования, что и для промышленных банерных сетей, кроме ограничения количества сайтов до одного. Для коммерческого применения требуется вести учет показов или кликов по банерам, учитывать счета клиентов, списывать средства за показы, предоставлять доступ к статистике клиентам, то есть вести полный биллинг (финансовый учет операций).

Для выбора места размещения банеров можно использовать специальные сервисы, которые определяют самые кликабельные области страниц. Именно в таких местах разумно разместить рекламные блоки.

Статистика посещений по сайту. Система анализа статистики посещений включает в себя два компонента: сбор статистики на сайте и ее анализ, формирование отчетов.

Базовых вариантов сбора статистики всего два:

  • скрипт на JavaScript на стороне сайта и отправка данных на сервер;
  • анализ логов (журналов) доступа на сайт на стороне сервера.

По поводу второго способа можно сказать, что он отличается высокой надежностью (не зависит от настроек и типа браузера) и применим в некоторых специфических задачах (например, для фиксирования посещений сайта роботами поисковых машин.) Однако, ограниченность набора данных не позволяет использовать его в большинстве задач. С помощью такого метода можно получить: IP-адрес, тип браузера (включая операционную систему), ссылающуюся страницу (откуда пришел пользователь), время, адрес страницы. Кроме того, сбор данных по логам сервера требует прямого доступа к ним, что создает дополнительные сложности и препятствует внешней обработке данных (на выделенном сервисе, не связанном с сервером самого веб-сайта).

Сбор данных на стороне клиента используется в большинстве систем статистики и позволяет получить максимум информации о посетителе. При сборе данных с клиентской стороны сохраняется: IP-адрес, тип браузера (включая операционную систему), ссылающуюся страницу (откуда пришел пользователь), время, адрес страницы, рабочее разрешение экрана и глубина цвета, сведения об установленных расширениях браузера (flash, Java), также можно внедрить дополнительные метки для точного определения уникальных пользователей. После сбора на клиенте, статистика об отдельном посещении (хите) в упакованном виде посылается на сервер, где она хранится для последующего анализа.

Важнейшей проблемой систем статистики можно назвать точность определения уникальных пользователей. При посещении сайта, пользователь в целом анонимен (без использования аутентификации, что обычно и имеет место). Механизм определения уникального посетителя (человека, зашедшего на сайт) основан на сумме данных, полученных на этапе сбора: IP-адрес, браузер, разрешение экрана, cookie (не всегда). Других признаков отличия пользователей не существует. При этом ни один из них не позволяет с абсолютной точностью идентифицировать уникального посетителя. Все указанные параметры характеризуют скорее компьютер и его конфигурацию, а не человека. Такое положение во многом связано с политикой свободы и анонимности в самом Интернете, что противоречит задачам маркетологов, изучающим поведение пользователей на веб-сайтах. Например, идентичные компьютеры (с одинаковой операционной системой и версиями браузеров), выходящие в Интернет через один шлюз (публичный IP-адрес) в большинстве систем статистики будут восприняты как один уникальный посетитель, вне зависимости от их реального числа. Многие другие выводы о поведении этих уникальных пользователей тоже делаются на основе предложений и условностей, а не на точных данных. Однако, решить эту проблему не представляется возможным и поэтому используют те данные, которые есть, с учетом их неточности.


В результате сбора большого количества данных, требуется их подробный анализ и формирование отчетов по ним. Качество и разнообразие отчетов зависит как от исходных данных, так и логики (алгоритмов) подсистемы формирования отчетов.

Сбор и анализ статистики может быть реализован либо в системе управления сайтом, либо во внешней службе (такой, как Google Analytics, Spylog, Hotlog, Счетчик Mail.ru и другие). Пользование внешними службами может быть бесплатно или на основе подписки. Бесплатный вариант обычно сопровождается обязательным размещением ссылки (кнопки) на сайт сервиса статистики, коммерческие варианты позволяют использовать невидимые счетчики (прозрачная картинка размером 1х1 пиксель).

Система управления сайтами предоставляет базовый сервис просмотра статистики и проигрывает по функциональности внешним службам, которые специализированны в этом направлении. Однако, лучшим выбором будет использование совместно нескольких систем для сравнения результатов. Сбор статистики из нескольких источников надежнее, потому что возможны сбои как в одной, так и в другой системе.

Многоязычность сайта. Поддержка нескольких языков содержимого на одном сайте представляет довольно серьезный набор технологий. Технически сайт должен содержать несколько разделов на различных языках и иметь возможность переключения версий на страницах. Однако, базовыми возможностями многоязычность не ограничивается.

Проектирование многоязычного сайта должно быть комплексным. Добавление нового раздела на дополнительном языке ведет за собой необходимость учета языка раздела во всех веб-сервисах.

Технические ограничения многоязычного веб-сайта определяются разнообразием кодировок символов. Например, для русского языка существует 5 кодировок (cp1251, koi8-r, dos, UTF8, ISO), которые могут быть использованы для верстки контента и установлены в качестве кодировки данных в БД. Для других распространенных западных языков есть свои кодировки символов, которые необходимо использовать для различных разделов сайта. Именно работа с несколькими кодировками текста может вызвать серьезные технические проблемы при работе сайта.

Современный подход к проблеме многоязычного сайта состоит в использовании стандарта UTF и кодировок, входящих в него (например, UTF-8). Кодировки UTF позволяют создавать документы, содержащие несколько наборов символов одновременно (например, русский текст с частями на французском), а также типографские знаки пунктуации (длинное тире, многоточие, все виды кавычек и т.д.) Поддержка UTF давно присутствует в большинстве браузеров и единственным затруднением при внедрении остается работоспособность системы управления сайтами и СУБД с такими кодировками.

В ограниченном виде многоязычность реализуется с помощью создания отдельных страниц на соответствующих языках, полный перевод контента не производится. Также можно ограничить функциональность веб-сервисов сайта (магазин, подбор товара, формы обратной связи, форумы и т.д.)

Предел развития многоязычности на сайте это создание портала, то есть точки перехода на другие сайты. Такой подход практикуют многонациональные корпорации, чтобы представить дифференцированное содержимое для стран своего присутствия. Однако, наличие нескольких локализованных сайтов выбивается из рамок рассмотрения функциональности отдельного сайта и относится уже к стратегии использования интернет-технологий во всей компании. Локализованные версии сайта могут быть совершенно различными (создаваться и поддерживаться местными представительствами) или быть выполнены в едином стиле, структуре и наполнении. Вопросы локализации не ограничиваются переводом контента и веб-сервисов на другой язык. Национальные особенности могут проявляться в самых неожиданных местах — от предпочтительной цветовой гаммы до способов навигации по сайту. Например, красный и желтый цвета в Китае считаются «солидными» и респектабельными, в то время как в Европе будут кричащими и раздражающими. Правильный учет таких потребностей это залог успеха локализации ресурса. Выявлением национальных предпочтений и особенностей занимаются ведущие специалисты в области удобства пользования компьютерных интерфейсов (usability).

Формы опроса общественного мнения. Опросы общественного мнения с использованием веб-сайта это один из самых дешевых способов получения обратной связи от клиентов. Опросы на сайте применимы в случае достаточной посещаемости сайта и особенно актуальны, если веб-сайт является основным источником клиентов.

Форма опроса выглядит как набор пунктов для голосования. В зависимости от типа опроса, можно выбирать один или несколько вариантов. Самый простой вид опроса позволяет выбрать один вариант из заранее определенных. Для пользователя он самый быстрый и привлекательный (при условии количества вариантов до 6-7). С точки зрения владельца сайта, такой опрос не всегда легко составить (нужно точно сформулировать вопрос и выбрать ограниченное число вариантов ответов). Есть вероятность, что мнение посетителей сайта кардинально отличается от предположений администрации. Например, варианты ответа на вопрос о самом полезном разделе сайта включают «О компании» и «Услуги», а на самом деле самый полезный «Контакты». Для преодоления ограничений фиксированных ответов применяются открытые вопросы — посетитель сам может вписать нужный ему вариант ответа. Наиболее полезно составлять комбинированные вопросы: фиксированные ответы и пункт «Другое», где можно написать ответ в свободном виде. Для расширения объема информации от пользователя, можно составлять опросы с несколькими вопросами и другими полями для заполнения (комментарии, пожелания, контактная информация) — в этом случае опросы пересекаются с функциональностью форм обратной связи. Отличие в подсчете статистики по обращениям из форм. Однако, в стремлении собрать как можно больше информации не нужно забывать об ограничениях терпимости посетителей сайта (подробнее об этом ниже).

После голосования посетитель обычно может увидеть результаты голосования: процентное распределение ответов и количество проголосовавших. На этом моменте могут возникнуть сложности: для крупной компании с высокой посещаемостью сайта имеет смысл скрывать данные, которые могут быть использованы конкурентами. Например, опрос предпочтений посетителей сайта крупной торговой сети имеет довольно высокую репрезентативность, поэтому его результаты обладают рыночной стоимостью. В таком случае, результаты в открытом доступе не выкладываются, они доступны только через интерфейс системы управления сайтами.

Для эффективного использования опросов нужно учитывать особенности аудитории сайта и профиль посещаемости (популярность страниц). Как правило, посетители сайта не горят желанием совершать лишние действия, не нужные им, так как часто на просмотр страницы сайта они тратят не более 10 сек. Поэтому, голосование пользователя должно быть как-либо мотивировано. Например, правильно составленная преамбула и уважительное обращение к клиенту может убедить его потратить свои усилия на голосование. Если важность результатов опроса высока, то можно использовать более эффективные методы — скидки для участников опроса, привилегии или даже небольшие призы. Для максимизации аудитории нужно обратить внимание на место размещение формы опроса (или заметной ссылки на страницу опроса) — она должна находиться на самых посещаемых страницах (обычно главная и другие продвигаемые страницы) в зонах приоритетного внимания посетителя: насколько возможно выше и левее (для традиционных западных языков). При игнорировании этих двух факторов (мотивация и размещение) репрезентативность голосования резко снижается и его результаты могут оказаться дезинформацией. Например, голосовать будут только праздно гуляющие по сайту люди, которые не относятся к целевой аудитории компании (активные, молодые офисные работники) с соответствующими предпочтениями. Если принять такие результаты на веру, то эффект для компании будет отрицательный.

Почтовая рассылка. Рассылка электронных писем имеет широкий диапазон применений. Во-первых, это адресное обращение к пользователям сайта (которые указали каким-то образом свой email) с целью представления предложения или напоминания о компании (маркетинговой коммуникации). К примерам таких рассылок можно отнести рассылку новостей компании, спецпредложений, поздравлений клиентов с Днем рождения. Во-вторых, это прикладной аспект других веб-сервисов сайта: рассылка подтверждений, уведомлений о статусе заказа, напоминание паролей, сообщения технической поддержки и т.д.

При решении о внедрении сервиса рассылки нужно четко определить цели и задачи рассылки, обосновать потребность клиентов в этом сервисе. Подключение рассылки новостей на сайте для клиентов часто остается пустой тратой денег, так как в большинстве случаев новости компании клиентов не интересуют. В этом случае добровольно подписываться будут единицы, а при массовой рассылке по всем клиентам будет расценено как спам. Отделение писем рассылки от спама в глазах клиентов — это важнейшая задача, так как опытные пользователи Интернета крайне негативно относятся к несанкционированной рассылке. В худшем случае возможны санкции со стороны провайдера хостинга (предупреждение, отключение сайта).

Таким образом, поставив задачи почтовой рассылки, можно приступать к внедрению сервиса. Более безопасным и функциональным является вариант прикладной рассылки, имеющей ценность для посетителя. При использовании широковещательной рассылки, которая может быть расценена как спам, в каждом необходимо указывать ссылку на форму удаления пользователя из списка рассылки и причину написания сообщения («вы получили это письмо, так как подписаны на список рассылки. »)

Полнотекстовый поиск по сайту. Несмотря на наличие мощных глобальных поисковых машин Google, Яндекс, Рамблер, все еще возникает потребность в использовании внутреннего полнотекстового поиска по сайту. Полнотекстовый поиск предполагает индексацию всех элементов содержимого сайта (заголовки, ссылки, подписи под картинками и т.д.) и учет словоформ при поиске (склонений, окончаний и др.)

Отличие собственного поискового «движка» от глобального в большем контроле работы и гарантированном полном покрытии страниц индексом. Дело в том, что скорость индексации сайта роботом глобальной системы непредсказуема и могут возникать значительные задержки. Локальный поиск подвержен полному контролю индексации и настроек поиска.

Существует несколько готовых систем поиска: Яндекс. Сервер, Mnogosearch и другие. Их алгоритмы учитывают морфологию русского языка и ориентированы на использование внутри одного сайта. В целом их принципы работы схожи с глобальными системами, но набор критериев значительно снижен, так как поиск происходит внутри одного сайта и защита от поискового спама не требуется. Основные критерии ранжирования связаны с контентом, а не с ссылочными факторами.

Подключение поисковой системы состоит из двух шагов: установка и настройка робота-паука для индексации содержимого и настройка вывода результатов поиска (обычно, дизайн результатов поиска и формы можно подогнать под общий дизайн шаблонов сайта).

Создание специализированной заказной системы полнотекстового поиска не представляется оправданным для подавляющего большинства проектов. Наличие развитых готовых решений и высокая трудоемкость делает такое решение неэффективным.

Специализированные инструменты поиска по каталогам/товарам/объектам. В отличие от полнотекстового поиска, специализированные сервисы поиска ориентированы на отдельные объекты сайта, на строгий набор параметров поиска. Такой поиск позволяет дать высокую точность и совпадение поискового запроса с выдачей. При этом вид результатов будет точно соответствовать предметной области. Например, при поиске по товарам мы будем видеть карточки товаров, а не набор страниц, как в полнотекстовом поиске.

Специализированный поиск реализуется как часть функциональности других сервисов: магазина, каталога и т.д. Необходимость создания специализированного поиска определяется количеством экземпляров объектов и структурой каталога.

Важно заметить, что первый шаг создания поиска состоит в правильном проектировании структуры данных: выделение свойств, по которым будет вестись поиск, классификация объектов и т.д. Далее на основе имеющихся свойств объектов необходимо составить форму поиска. Она определяет алгоритм поиска для посетителя и несет в себе реализацию планируемых сценариев поиска. От того, насколько близки эти сценарии к реальным, зависит удобство и применимость поиска. Например, мы знаем, что покупатели будут искать по группе товара и части его названия. Соответственно, форма поиска должна реализовывать этот сценарий, то есть содержать как минимум два поля.


В случае с большим количеством несовместимых сценариев удобным решением будет несколько вариантов поиска: расширенный и быстрый. Большинство людей предпочтут быстрый поиск из-за его доступности, а требовательные посетители могут пользоваться расширенным: с максимальными возможностями.

Вторая часть разработки функции специализированного поиска: формирование результатов поиска. Так как объекты поиска определены, то вид результатов должен оптимально отражать найденную единицу (товар, тур, услугу). Одна строчка результатов с одной стороны, отражает различия между объектами, а с другой достаточно компактна, чтобы размещать несколько результатов на одной странице. Конкретные требования к выводу результатов поиска можно сформировать только в привязке к конкретным областям, но часто работают общие рекомендации: показывать самые значимые характеристики товара, его изображение, цену, производителя. Как правило, ссылка с результатов поиска ведет на карточку товара.

Дополнительные сервисы подбора, расчета, демонстрации, сравнения товаров/услуг. Сервисы этого типа имеют схожее назначение со специализированным поиском, но имеют дополнительные удобства.

Подбор товара может быть представлен в виде последовательного поиска (фильтрации) товаров. Например, выбор стиральной машины: размер, производитель, цена. На каждом шаге пользователю можно показывать количество результатов или промежуточную выборку. На странице (например, на главной раздела каталога) полезно разместить простые формы поиска — фильтры, которые содержат 2-3 свойства, обычно раскрывающихся списков и значительно сокращают список товаров и уменьшают возможную полосу прокрутки.

Сравнение товаров также может быть полезно при широком ассортименте схожей продукции. Эта функция достаточно стандартна. Полезным свойством сравнения будет выделение цветом различающихся характеристик в таблице сравнения.

Сервисы по демонстрации товара связны с продвинутыми технологиями 3D-изображений и других интерактивных мини-приложений. Расширяя обычные возможности веб-сайта, они позволяют посетителю рассмотреть товар со всех сторон, совершить виртуальный тур по отелю, увидеть в действии электронное устройство и результаты его работы.

Наличие дополнительных сервисов, описанных выше, значительно повышает удовлетворенность посетителя и поднимает уровень его доверия к ресурсу. При прочих равных, такой ресурс выигрывает конкуренцию с другими магазинами.

Список вопросов/ответов. Частые вопросы/ответы — FAQ — важная часть веб-сайта, направленная на поддержку клиентов/посетителей. С помощью списка вопросов/ответов посетители могут проводить самоподдержку, что снижает нагрузку на основной персонал службы поддержки или отдела по работе с клиентами компании (то есть, снижает издержки на эти операции).

Для внедрения списка ЧАВО, сначала задаются рубрики. Для классификации вопросов по рубрикам сначала нужно проанализировать вариации самых частых вопросов к отделу поддержки или клиентских отношений. Затем, список наполняется и становится частью раздела поддержки пользователей сайта или прикрепляется к отдельному сервису, по которому есть список ЧАВО.

Функции продажи и доставки электронных товаров (лицензий, ключей, контента). Продажа электронных товаров дает возможность компании реализовывать полностью электронные бизнес-процессы. Популярность электронных товаров постоянно возрастает и логично распространять их с использованием интернет-технологий.

Ключевой вопрос продажи электронных товаров это безопасность. Основная функциональности этого сервиса заключается в безопасном способе авторизации, биллинга и выдачи товара с веб-сайта. Требуется подтверждать подлинность пользователя и жестко ограничивать экземпляры товара: по количеству ключей, лицензий и т.д. Для реализации этих требований используются технологии SSL, TLS, шифрование и хеширование данных, системы защиты от атак.

Продажа электронных товаров завязана на функции электронного каталога и авторизацию пользователей. Причем значение каталога резко возрастает — другого способа представления товара скорее всего не будет. Так как доставка товара происходит через интернет-канал пользователя, ключом к успеху магазина будет служить наличие безлимитного скоростного доступа в Интернет у пользователя. Этот фактор особенно важно учитывать при больших объемах электронного товара: как правило это любые мультимедиа-продукты, а также сложное современное ПО. С другой стороны, существуют технические ограничения со стороны сервера по объему хранения данных и пропускной способности канала. Если с проблемой хранения можно относительно просто и недорого разобраться, то пропускная способность каналов растет довольно медленно и повышение скорости доступа может быть неоправданно дорого. Для крупных проектов по распространению электронных товаров актуально разделение интерфейсов оформления заказа и раздачи контента, что позволяет разделить нагрузку и сконфигурировать специализированные серверы для разных задач.

При организации продажи сторонних продуктов, следует обратить пристальное внимание на лицензионную чистоту контента, а также на региональные ограничения распространения ПО, мультимедиа-продукции. Решение вопросов легитимности невозможно без привлечения специалистов в области авторских и смежных прав, с опытом разрешения споров с участием интернет-компаний.

Нужно заметить, что сайт, приносящий прямой и непосредственный доход обладает конкретной стоимостью и может выступать целью недружественного захвата конкурентов или других лиц. В этом свете серьезная правовая поддержка такому ресурсу просто необходима.

Система поддержки пользователей (обработка запросов и ведение базы знаний). Поддержка пользователей на веб-сайте это востребованный сервис для компаний B2C сегмента и высокотехнологичного сектора. Задача такой функции: поддерживать коммуникации с клиентами в виде запросов к компании и накопление базы знаний из этих типовых или индивидуальных проблем. Как правило, многие пользователи сталкиваются с общими проблемами, которые стоит выделить и предоставить всем зарегистрированным пользователям доступ к их решению или хотя бы проинформировать их о наличии проблем.

Структурно система поддержки пользователей похожа на особый форум: рубрики объединяют общие вопросы и имеется раздел для индивидуальных обращений к службе поддержки. Для доступа к системе обычно достаточно заполнить анкету и подтвердить наличие продукта компании (опционально). Ограничение доступа к базе знаний (проблем и решений) может определяться политикой компании. Некоторые производители оборудования не стремятся обнародовать возможные проблемы с их продукцией для потенциальных клиентов, но открывает эти данные для снятия напряжения и удовлетворения состоявшихся покупателей.

Система поддержки пользователей может быть интегрирована с системой управления сайтами или поставляться отдельно: выбор зависит от конкретных потребностей в функциональности и технических требований (программное обеспечение — ОС, веб-сервер, СУБД и т.д.) системы.

Механизм комментирования материалов сайта посетителями. Возможность комментирования контента посетителями сайта это расширение функциональности опросов общественного мнения. В этом случае мотивация посетителя возрастает и он может открыто выражать свое мнение о статье, продукте или услуге. Наличие комментирования может послужить причиной повышения доверия к ресурсу (другие посетители уже оценили, можно обмениваться мнениями) и отдельным сервисом (что-то вроде развлечения, ведь комментировать намного проще, чем создавать авторский контент) — и то, и другое привлекает новых посетителей и повышает лояльность существующих. Как и многие другие сервисы, комментирование бесплатно и не требует особых усилий от пользователя.

Однако, для получения эффекта от этой функциональности, следует оценить применимость на сайте компании. Прежде всего, комментирование востребовано на контент-проектах, где основная задача — привлечь как можно больше посетителей с целью их монетизации через рекламу или дополнительные услуги. Также для успешного использования нужна определенная критическая масса заинтересованных в этом сервисе посетителей.

Наполнение контентом внешними пользователями. Одним из актуальных направлений концепции Web 2.0 является так называемый user-generated content, то есть контент, созданный посетителями сайта. Для крупных контент-проектов такой контент может стать золотой жилой. Обычно контент нужно добавлять силами администрации сайта, либо покупать его из внешний источников. В случае задействования посетителей сайта, наполнять сайт можно бесплатно или за символическое вознаграждение.

Однако, внедрение поддержки публикации контента пользователями требует развитой функциональности системы управления сайтом и определенных усилий со стороны контент-менеджеров. Прежде всего встает вопрос модерации или цензуры контента. В этом отношении от создателей сайта потребуется четкая и понятная политика и механизмы модерации, так как это единственный способ сохранить контроль над содержимым сайта.

Вышеприведенный перечень не претендует на полноту описания всех возможностей современных веб-сайтов. Ориентируясь на этот перечень можно составить начальные требования к функциональности сайта для начала переговоров с разработчиками. Однако, определяя требования к функциям будущего сайта, необходимо учитывать ряд важных факторов: возможности модернизации сайта, принцип достаточности и связь с бизнес-функциями. Подробнее процесс создания сайта будет рассмотрен в следующих главах.

С точки зрения бизнеса функциональность сайта принимает совсем другие черты. Если рассматривать веб-сайт как средство решение бизнес-задач, то можно выделить несколько функций:


2. предоставление информации клиентам;

4. рекламное медиа;

5. поддержка бизнес-процесса;

6. реализация бизнес-процесса;

7. реализация коммуникаций с партнерами;

8. повышение качества обслуживания;

9. географическая доступность;

10. опросы клиентов, обратная связь;

11. сбор данных о предпочтениях;

12. возможность интернет-продвижения;

13. коммуникации внутри компании;

14. средство самоподдержки клиентов.

Бизнес-функции соотносятся с технической функциональностью следующим образом. Для веб-сайта определяются бизнес-цели, из которых формируются бизнес-задачи проекта. Каждую бизнес-задачу можно разбить на бизнес-функции, которые будут реализованы через технические возможности сайта.

Постановка бизнес-целей и задач может быть реализована в рамках методологии управления проектами, принятой в компании, а также с помощью системы стратегического управления BSC и ключевых показателей результативности.

Не нашли то, что искали? Воспользуйтесь поиском:

Лучшие изречения: Учись учиться, не учась! 10389 — | 7889 — или читать все.

188.64.174.135 © studopedia.ru Не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования. Есть нарушение авторского права? Напишите нам | Обратная связь.

Отключите adBlock!
и обновите страницу (F5)

очень нужно

mnoGoSearch Functions

Table of Contents

  • udm_add_search_limit — Add various search limits
  • udm_alloc_agent_array — Allocate mnoGoSearch session
  • udm_alloc_agent — Allocate mnoGoSearch session

  • udm_api_version — Get mnoGoSearch API version
  • udm_cat_list — Get all the categories on the same level with the current one
  • udm_cat_path — Get the path to the current category
  • udm_check_charset — Check if the given charset is known to mnogosearch
  • udm_clear_search_limits — Clear all mnoGoSearch search restrictions
  • udm_crc32 — Return CRC32 checksum of given string
  • udm_errno — Get mnoGoSearch error number
  • udm_error — Get mnoGoSearch error message
  • udm_find — Perform search
  • udm_free_agent — Free mnoGoSearch session
  • udm_free_ispell_data — Free memory allocated for ispell data
  • udm_free_res — Free mnoGoSearch result
  • udm_get_doc_count — Get total number of documents in database
  • udm_get_res_field — Fetch a result field
  • udm_get_res_param — Get mnoGoSearch result parameters
  • udm_hash32 — Return Hash32 checksum of given string
  • udm_load_ispell_data — Load ispell data
  • udm_set_agent_param — Set mnoGoSearch agent session parameters

User Contributed Notes

Well since the function udm_get_res_param used with UDM_PARAM_NUM_ROWS does infact not get the number of rows on the current page, it can actualy find more rows than specified by UDM_PARAM_PAGE_SIZE, . well i had to rewrite the some stuff I also added highlightning since the parameter UDM_PARAM_HLBEG nor UDM_PARAM_HLEND doesnt seem to work, alot of things here are fairly undocumented, I also found out after reading the Search_Mnogosearch pear class that replacing «\2» and «\3» in the text with HLBEG and HLEND works. well here is the class rewritten (without fetch, just find):

class MnogoSearch
<
public $matches = NULL ;
public $total = NULL ;
public $hilites = array( ‘title’ , ‘text’ );
public $hlbeg = ‘ ‘ ;
public $hlend = ‘ ‘ ;

protected $agent = NULL ;
protected $res = NULL ;

public function __construct () <


$this -> agent = udm_alloc_agent ( ‘mysql://user:pass@localhost/mnogosearch/’ );

$this -> set ( UDM_PARAM_SEARCH_MODE , UDM_MODE_ALL );
$this -> set ( UDM_PARAM_CHARSET , ‘iso-8859-1’ );
$this -> set ( UDM_PARAM_BROWSER_CHARSET , ‘iso-8859-1’ );
$this -> set ( UDM_PARAM_WORD_MATCH , UDM_MATCH_SUBSTR );

private function hiLite ( $t ) <
if ( $t == » )
return » ;
$t = str_replace ( «\2» , $this -> hlbeg , $t );
$t = str_replace ( «\3» , $this -> hlend , $t );
return $t ;
>

public function set ( $k , $v ) <
udm_set_agent_param ( $this -> agent , $k , $v );
>

public function find ( $q , $page = 0 , $rows = 10 ) <

if ( $page 0 || $rows 0 ) <
$page = 0 ;
$rows = 10 ;
>

$this -> set ( UDM_PARAM_PAGE_SIZE , $rows );
$this -> set ( UDM_PARAM_PAGE_NUM , $page );

$this -> res = udm_find ( $this -> agent , $q );
$this -> total = udm_get_res_param ( $this -> res , UDM_PARAM_FOUND );

$found = udm_get_res_param ( $this -> res , UDM_PARAM_NUM_ROWS );

if( $found ) <
$b = udm_get_res_param ( $this -> res , UDM_PARAM_FIRST_DOC );
$e = udm_get_res_param ( $this -> res , UDM_PARAM_LAST_DOC );
$rows = $e — $b + 1 ;

$fields = array( ‘urlid’ , ‘url’ , ‘content’ , ‘title’ , ‘keywords’ , ‘desc’ ,
‘text’ , ‘size’ , ‘rating’ , ‘modified’ , ‘order’ , ‘crc’ , ‘category’ ,
‘lang’ , ‘charset’ , ‘siteid’ , ‘pop_rank’ , ‘originid’ );

for( $i = 0 ; $i $rows ; $i ++) <
for( $j = 0 ; $j count ( $fields ); $j ++) <
$this -> matches [ $i ][ $fields [ $j ]] = udm_get_res_field ( $this -> res , $i , $j + 1 );
>
foreach( $this -> hilites as $hilite ) <
$this -> matches [ $i ][ $hilite ] = $this -> hiLite ( $this -> matches [ $i ][ $hilite ]);
>

public function __destruct () <
udm_free_agent ( $this -> agent );
if (isset( $this -> res )) <
udm_free_res ( $this -> res );
>
>
>

?>

Im thinking, maybe swish-e is better ? :)

for win32 users, mnogosearch since version 3.2.x
support COM interface

for Reflection API of COM use Visual Studio .NET
-> Tools ..
-> OLE/COM object viewer
— > C:\Program Files\mnoGoSearch\searchcom.dll

I have found that if you compile php with «—with-ftp and —with-mnogosearch=/dir» you must compile and build mnogosearch with «—disable-ftp» first. There are some naming conflicts between php’s ftp libs and mno’s ftp libs.

LX. mnoGoSearch Functions

These functions allow you to access the mnoGoSearch (former UdmSearch) free search engine. mnoGoSearch is a full-featured search engine software for intranet and internet servers, distributed under the GNU license. mnoGoSearch has a number of unique features, which makes it appropriate for a wide range of applications from search within your site to a specialized search system such as cooking recipes or newspaper search, FTP archive search, news articles search, etc. It offers full-text indexing and searching for HTML, PDF, and text documents. mnoGoSearch consists of two parts. The first is an indexing mechanism (indexer). The purpose of the indexer is to walk through HTTP, FTP, NEWS servers or local files, recursively grabbing all the documents and storing meta-data about that documents in a SQL database in a smart and effective manner. After every document is referenced by its corresponding URL, meta-data is collected by the indexer for later use in a search process. The search is performed via Web interface. C, CGI, PHP and Perl search front ends are included.

More information about mnoGoSearch can be found at http://www.mnogosearch.ru/ .

Note: This extension is not available on Windows platforms.

In order to have these functions available, you must compile PHP with mnoGosearch support by using the —with-mnogosearch option. If you use this option without specifying the path to mnoGosearch, PHP will look for mnoGosearch under /usr/local/mnogosearch path by default. If you installed mnoGosearch at a different location you should specify it: —with-mnogosearch=DIR .

Note: PHP contains built-in MySQL access library, which can be used to access MySQL. It is known that mnoGoSearch is not compatible with this built-in library and can work only with generic MySQL libraries. Thus, if you use mnoGoSearch with MySQL, during PHP configuration you have to indicate the directory of your MySQL installation, that was used during mnoGoSearch configuration, i.e. for example: —with-mnogosearch —with-mysql=/usr .

This extension has no configuration directives defined in php.ini .

The constants below are defined by this extension, and will only be available when the extension has either been compiled into PHP or dynamically loaded at runtime.

LXI. mnoGoSearch Functions

These functions allow you to access the mnoGoSearch (former UdmSearch) free search engine. mnoGoSearch is a full-featured search engine software for intranet and internet servers, distributed under the GNU license. mnoGoSearch has a number of unique features, which makes it appropriate for a wide range of applications from search within your site to a specialized search system such as cooking recipes or newspaper search, FTP archive search, news articles search, etc. It offers full-text indexing and searching for HTML, PDF, and text documents. mnoGoSearch consists of two parts. The first is an indexing mechanism (indexer). The purpose of the indexer is to walk through HTTP, FTP, NEWS servers or local files, recursively grabbing all the documents and storing meta-data about that documents in a SQL database in a smart and effective manner. After every document is referenced by its corresponding URL, meta-data is collected by the indexer for later use in a search process. The search is performed via Web interface. C, CGI, PHP and Perl search front ends are included.

More information about mnoGoSearch can be found at http://www.mnogosearch.ru/ .

Note: This extension is not available on Windows platforms.

In order to have these functions available, you must compile PHP with mnoGosearch support by using the —with-mnogosearch option. If you use this option without specifying the path to mnoGosearch, PHP will look for mnoGosearch under /usr/local/mnogosearch path by default. If you installed mnoGosearch at a different location you should specify it: —with-mnogosearch=DIR .

Note: PHP contains built-in MySQL access library, which can be used to access MySQL. It is known that mnoGoSearch is not compatible with this built-in library and can work only with generic MySQL libraries. Thus, if you use mnoGoSearch with MySQL, during PHP configuration you have to indicate the directory of your MySQL installation, that was used during mnoGoSearch configuration, i.e. for example: —with-mnogosearch —with-mysql=/usr .

This extension has no configuration directives defined in php.ini .

The constants below are defined by this extension, and will only be available when the extension has either been compiled into PHP or dynamically loaded at runtime.

LXXIV. mnoGoSearch Functions

These functions allow you to access the mnoGoSearch (former UdmSearch) free search engine. mnoGoSearch is a full-featured search engine software for intranet and internet servers, distributed under the GNU license. mnoGoSearch has a number of unique features, which makes it appropriate for a wide range of applications from search within your site to a specialized search system such as cooking recipes or newspaper search, FTP archive search, news articles search, etc. It offers full-text indexing and searching for HTML, PDF, and text documents. mnoGoSearch consists of two parts. The first is an indexing mechanism (indexer). The purpose of the indexer is to walk through HTTP, FTP, NEWS servers or local files, recursively grabbing all the documents and storing meta-data about that documents in a SQL database in a smart and effective manner. After every document is referenced by its corresponding URL, meta-data is collected by the indexer for later use in a search process. The search is performed via Web interface. C, CGI, PHP and Perl search front ends are included.

More information about mnoGoSearch can be found at http://www.mnogosearch.org/ .

Замечание: Для Windows-платформ это расширение недоступно.

In order to have these functions available, you must compile PHP with mnoGosearch support by using the —with-mnogosearch option. If you use this option without specifying the path to mnoGosearch, PHP will look for mnoGosearch under /usr/local/mnogosearch path by default. If you installed mnoGosearch at a different location you should specify it: —with-mnogosearch=DIR .

Замечание: PHP contains built-in MySQL access library, which can be used to access MySQL. It is known that mnoGoSearch is not compatible with this built-in library and can work only with generic MySQL libraries. Thus, if you use mnoGoSearch with MySQL, during PHP configuration you have to indicate the directory of your MySQL installation, that was used during mnoGoSearch configuration, i.e. for example: —with-mnogosearch —with-mysql=/usr .

Данное расширение не определяет никакие директивы конфигурации в php.ini .

Перечисленные ниже константы определены данным расширением и могут быть доступны только в том случае, если PHP был собран с поддержкой этого расширения или же в том случае, если данное расширение подгружается во время выполнения.

XLVII. mnoGoSearch Functions

These functions allow you to access mnoGoSearch (former UdmSearch) free search engine. In order to have these functions available, you must compile php with mnogosearch support by using the —with-mnogosearch option. If you use this option without specifying the path to mnogosearch, php will look for mnogosearch under /usr/local/mnogosearch path by default. If you installed mnogosearch at other path you should specify it: —with-mnogosearch=DIR .

mnoGoSearch is a full-featured search engine software for intranet and internet servers, distributed under the GNU license. mnoGoSearch has number of unique features, which makes it appropriate for a wide range of application from search within your site to a specialized search system such as cooking recipes or newspaper search, ftp archive search, news articles search, etc. It offers full-text indexing and searching for HTML, PDF, and text documents. mnoGoSearch consists of two parts. The first is an indexing mechanism (indexer). The purpose of indexer is to walk through HTTP, FTP, NEWS servers or local files, recursively grabbing all the documents and storing meta-data about that documents in a SQL database in a smart and effective manner. After every document is referenced by its corresponding URL, meta-data collected by indexer is used later in a search process. The search is performed via Web interface. C CGI, PHP and Perl search front ends are included.

Note: php contains built-in mysql access library, which can be used to access mysql. It is known that mnoGoSearch is not compatible with this built-in library and can work only with generic mysql libraries. Thus, if you use mnoGoSearch with mysql, during php configuration you have to indicate directory of mysql installation, that was used during mnoGoSearch configuration, i.e. for example: —with-mnogosearch —with-mysql=/usr

You need at least 3.1.10 version of mnoGoSearch installed to use these functions.

Илон Маск рекомендует:  Что такое код lowvideo
Понравилась статья? Поделиться с друзьями:
Кодинг, CSS и SQL