Как кодировать пользовательскую страницу поиска для поиска текущего сайта и дочерних сайтов только в SharePoint 2007?
Пользователи нашего портала SharePoint-2007 смогут создавать свои собственные сайты и дочерние сайты. Эти сайты будут доступны для поиска, но поиск будет ограничен сайтом и суб-сайтами, если таковые имеются.
Я пытаюсь разработать собственную страницу поиска с собственным кодом за логикой (C#) и пользовательским интерфейсом. Эта страница пользовательского поиска будет частью шаблона сайта. Я не уверен, как лучше всего кодировать страницу поиска и шаблон сайта. Какой объем я использую? Нужно ли создавать новую область каждый раз, когда пользователь создает сайт? На стандартной странице поиска SharePoint есть раскрывающийся список с опцией "Этот сайт". Но я не вижу этой области в списке областей поиска в Search Administration. Любая помощь или указатели приветствуются. Заранее спасибо.
1 ответ
Области "Этот сайт" и "Этот список" не являются истинными областями. Они представляют собой функциональность, встроенную в поисковый код MOSS. Эти "области" вызываются через специальные параметры строки запроса (то есть фильтры свойств).
По умолчанию при выполнении этих поисков он перенаправляет на страницу с именем OSSSearchResults.aspx, которая выглядит как часть локального сайта. Обратите внимание на параметры строки запроса:
k=<search_terms>
: Ключевое слово (а), термины, которые вы ищете.cs=This%20Site
: Контекстная область, область, которую вы хотите использовать (также можно использоватьThis%20List
).u=<site_url>
: URL, сайт, к которому вы хотите ограничить результаты поиска.
Когда мы строили наш интранет-портал, мы создали специальный Центр поиска. Он обрабатывает задачи корпоративного поиска, но если вы передадите ему те же параметры, которые указаны выше, он также обеспечит поиск по сайту и списку. Таким образом, мы можем иметь одно центральное место для обеспечения функциональности поиска, одно место для настройки / стиля, и все наши поиски выглядят и ведут себя одинаково.
На каждом сайте, как часть нашего макета страницы, у нас есть окно поиска специально для "Этот сайт". Когда вы ищете из него, мы просто POST
Соответствующие параметры возвращаются в наш поисковый центр, и вот он у вас.