Максим Павловский http://www.maxpaulousky.com/ Twitter: @paulousky Поискóвая оптимизация; Поискóвый запрос; Поискóвое слово; Поискóвые системы Новый орфоэпический словарь русского языка. Произношение. Ударение. Грамматические формы / Т.Ф. Иванова. – 2-е изд., стереотип., – М.: Рус. яз.–Медиа, 2005. – XIV, 893, [5] c. Если сайта нет в поисковой системе, то найти его так же трудно, как обнаружить метеорит размером со спичечную головку Большая часть трафика сайта генерируется поисковыми системами; Когда не знаешь где искать, используешь поисковую систему; Трафик ≡ доход. Трафик моего блога www.maxpaulousky.com Данные загружаются динамически с сервера; Данные предоставляются только в момент выполнения клиентского кода; Поисковые системы не могут обрабатывать не HTML код Реализация доступа к содержимому посредством прямых ссылок (Deep linking); Создание карты сайта (Sitemap) для поисковых систем; www.sitemaps.org Предоставление данных для индексации поисковыми системами; SEO Оптимизация Silverlight приложений, построенных на базе MVVM паттерна //Global.asax.cs //Определяем отображение Url на физические //страницы: private void RegisterRoutes(RouteCollection routes){ routes.MapPageRoute(“all-vacancies”, “all-vacancies”, "~/Default.aspx“, false); routes.MapPageRoute(“vacancies-in{region}”, “vacancies-in-{region}”, "~/Default.aspx“, false); routes.MapPageRoute(“vacancy-{id}”, “vacancy-{id}”, "~/Default.aspx“, false); } //App.xaml //Определяем соответствие Url в Siverlight: <Nav:UriMapper x:Key="uriMapper"> <Nav:UriMapping Uri="/all-vacancies" MappedUri="/View/Module.xaml?module=Dashboar dModule"/> <Nav:UriMapping Uri="/vacancies-in{region}”MappedUri="/View/Module.xaml?module =DashboardModule&amp;region={region}"/> <Nav:UriMapping Uri="/vacancy-{id}" MappedUri="/View/Module.xaml?module=DetailsM odule&amp;id={id}"/> </Nav:UriMapper> //Module.xaml.cs //Когда пользователь переходит по ссылке protected override void OnNavigatedTo (NavigationEventArgs e){ //Получаем имя модуля string moduleParam = NavigationContext.QueryString["module"]; //Загружаем и отображаем его ShowModule(moduleParam); } //Sitemap.ashx.cs public void ProcessRequest(HttpContext context){ XElement root = new XElement("urlset"); root.Add(CreateAllVacanciesElement()); root.Add(CreateRegionVacanciesElements()); root.Add(CreateVacancyByIdElements); context.Response.Write(root.ToString());} //Default.aspx <asp:GridView ID="VacanciesGridView" runat="server" DataSourceID="VacanciesDDS“ AutoGenerateColumns="true“ /> <cc1:DomainDataSource ID="VacanciesDDS" runat="server” DomainServiceTypeName="SLJobBoardSEO.Web.Vac anciesDomainService” /> //Default.aspx.cs switch(((Route)RouteData.Route).Url) { //получаем параметры запроса из текущего Route case Defines.RoutingNames.VacanciesByRegion: //Указываем метод для получения данных VacanciesDDS.QueryName="LoadVacanciesByRegion"; //Передаём параметры для получения данных VacanciesDDS.QueryParameters.Add( RouteData.Values.First().Key, //region RouteData.Values.First().Value.ToString()); break; } Microsoft TechDays http://www.techdays.ru Основы SEO http://bit.ly/SeoBasics; Siverlight Job Board Seo Demo http://bit.ly/SLJBSeo; Реализация SEO для Siverlight от Брэда Абрамса http://bit.ly/AbramsSeo; Пример интеграции Siverlight Navigation и MVVM от Джереми Ликнесса http://bit.ly/NavigationPrism Прочее: http://bit.ly/SLSeoIlluminate, http://bit.ly/6TipsSeo, http://bit.ly/SLSeoCP