Лучший способ создать динамический Google Sitemap с помощью ASP.NET MVC? - PullRequest
0 голосов
/ 16 декабря 2010

Есть ли рекомендуемый подход для создания Google Sitemaps с использованием ASP.NET MVC?

Я новичок в MVC, и мне впервые нужно было создать его, и я подумал, как лучше поступитьit.

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

Любой совет / направление о том, как создать это будет высоко ценится.

Ответы [ 3 ]

1 голос
/ 16 декабря 2010

1 - Первое, что вам нужно, это создать представление всего вашего веб-сайта, список узлов, которые имеют детей, родителей и так далее.Самый простой способ сделать это без использования собственного решения - использовать MVCSiteMapProject .Это позволяет вам использовать термины MVCish, такие как имена ваших действий и контроллеров, для определения узлов, которые будут автоматически иметь правильные URL-адреса, используя ваши определения маршрутизации.

2 - Теперь, поскольку MVCSiteMap наследуется от стандартного XmlSiteMap (может неточное имя справа) вы можете использовать другую надстройку для создания карты сайта Google из узлов, которые вы определили в MVCSiteMapProject.

Существует куча способов сделать # 2 , поэтому егоВам решать технику.

1 голос
/ 16 декабря 2010

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

Некоторые простые шаги, которые нужно выполнить, могут быть:

  1. Создайте действие в вашем домашнем контроллере (или создайте новое), назовите его SiteMap.
  2. Пусть действие вернет представление с данными вашей страницы в качестве модели.
  3. Создатьпредставление с именем SiteMap, содержащее Google XML, а затем итерацию по данным вашей страницы для создания динамического содержимого.
  4. Добавьте пользовательский маршрут к файлу Global.asax, который указывает на «/sitemap.xml» или что-либо другое,предварительно заполните параметры контроллера и действия параметрами нового действия.

Если вы не уверены в пользовательских маршрутах, просто скопируйте один из них по умолчанию и вставьте его выше.Маршруты обрабатываются в порядке поступления.Убедитесь, что вы дали ему новое имя.

Rich

0 голосов
/ 01 января 2014

для динамической карты сайта, я обнаружил, что это лучшее решение: http://ben.onfabrik.com/posts/generating-dynamic-xml-sitemaps-in-aspnet-mvc

он использует контроллер для генерации XML-файла.

...