Поисковая оптимизация silverlight приложений

17
Microsoft TechDays http://www.techdays.ru Поисковая оптимизация Silverlight приложений Максим Павловский http://www.maxpaulousky.com/ Twitter: @paulousky

Upload: hoai

Post on 20-Jan-2016

56 views

Category:

Documents


0 download

DESCRIPTION

Поисковая оптимизация Silverlight приложений. Максим Павловский http://www.maxpaulousky.com/ Twitter: @ paulousky. Говорим правильно. Поиск ó вая оптимизация; Поиск ó вый запрос; Поиск ó вое слово; Поиск ó вые системы. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Поисковая оптимизация  Silverlight  приложений

Поисковая оптимизация Silverlight приложенийМаксим Павловскийhttp://www.maxpaulousky.com/Twitter: @paulousky

Page 2: Поисковая оптимизация  Silverlight  приложений

Говорим правильно

Поискóвая оптимизация;Поискóвый запрос;Поискóвое слово;Поискóвые системы

Новый орфоэпический словарь русского языка. Произношение. Ударение. Грамматические формы / Т.Ф. Иванова. – 2-е изд., стереотип., – М.: Рус. яз.–Медиа, 2005. – XIV, 893, [5] c.

Page 3: Поисковая оптимизация  Silverlight  приложений

Важность поисковой оптимизации

Если сайта нет в поисковой системе, то найти его так же трудно, как обнаружить метеорит размером со спичечную головку

Page 4: Поисковая оптимизация  Silverlight  приложений

Важность поисковой оптимизации

Большая часть трафика сайта генерируется поисковыми системами;Когда не знаешь где искать, используешь поисковую систему;Трафик ≡ доход.

Трафик моего блога www.maxpaulousky.com

Page 5: Поисковая оптимизация  Silverlight  приложений

Проблемы поисковой оптимизации RIA приложенийДанные загружаются динамически

с сервера;Данные предоставляются только в момент выполнения клиентского кода;Поисковые системы не могут обрабатывать не HTML код

Page 6: Поисковая оптимизация  Silverlight  приложений

План докладаРеализация доступа к содержимому посредством прямых ссылок (Deep linking);Создание карты сайта (Sitemap) для поисковых систем; www.sitemaps.orgПредоставление данных для индексации поисковыми системами;SEO Оптимизация Silverlight приложений, построенных на базе MVVM паттерна

Page 7: Поисковая оптимизация  Silverlight  приложений

Поддержка прямых ссылок//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);}

Page 8: Поисковая оптимизация  Silverlight  приложений

Поддержка прямых ссылок//App.xaml//Определяем соответствие Url в Siverlight:<Nav:UriMapper x:Key="uriMapper"> <Nav:UriMapping Uri="/all-vacancies" MappedUri="/View/Module.xaml?module=DashboardModule"/> <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=DetailsModule&amp;id={id}"/></Nav:UriMapper>

Page 9: Поисковая оптимизация  Silverlight  приложений

Поддержка прямых ссылок//Module.xaml.cs//Когда пользователь переходит по ссылкеprotected override void OnNavigatedTo (NavigationEventArgs e){//Получаем имя модуляstring moduleParam = NavigationContext.QueryString["module"];//Загружаем и отображаем егоShowModule(moduleParam);}

Page 10: Поисковая оптимизация  Silverlight  приложений

Реализация поддержки прямых ссылок

Демонстрация

Page 11: Поисковая оптимизация  Silverlight  приложений

Поддержка карты сайта (Sitemap)//Sitemap.ashx.cspublic void ProcessRequest(HttpContext context){ XElement root = new XElement("urlset"); root.Add(CreateAllVacanciesElement()); root.Add(CreateRegionVacanciesElements()); root.Add(CreateVacancyByIdElements); context.Response.Write(root.ToString());}

Page 12: Поисковая оптимизация  Silverlight  приложений

Реализация поддержки карты сайта (Sitemap)

Демонстрация

Page 13: Поисковая оптимизация  Silverlight  приложений

Предоставление данных для индексации//Default.aspx<asp:GridView ID="VacanciesGridView" runat="server" DataSourceID="VacanciesDDS“ AutoGenerateColumns="true“ />

<cc1:DomainDataSource ID="VacanciesDDS" runat="server” DomainServiceTypeName="SLJobBoardSEO.Web.VacanciesDomainService” />

Page 14: Поисковая оптимизация  Silverlight  приложений

Предоставление данных для индексации

//Default.aspx.csswitch(((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;}

Page 15: Поисковая оптимизация  Silverlight  приложений

Реализация отображения данных для индексации

Демонстрация

Page 16: Поисковая оптимизация  Silverlight  приложений

Microsoft TechDayshttp://www.techdays.ru

Silverlight приложение в поисковых системах

Демонстрация

Page 17: Поисковая оптимизация  Silverlight  приложений

Полезные ссылкиОсновы 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