20 мая 2019 г. 23:45

135

Карта сайта для нашего блога

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

Наш блог реализован на фреймворке Django и поэтому все делается легко и просто

На хостинге у нас Django 1.11 и python 2 версии

Сперва добавим строчку 'django.contrib.sitemaps' в INSTALLED_APPS

После этого переходим в urls.py нашего проекта и добавим следующий код


# Импортируем GenericSitemap 
from django.contrib.sitemaps import GenericSitemap

from blog.models import Post

info_dict = {
    #Выбираем опубликованные посты 
    'queryset': Post.objects.filter(status='published'),
    #Указываем поле из модели , значение которой будет отображаться в   для sitemap.xml
    'date_field': 'created_at',
}

urlpatterns = [
       #Используем GenericSitemap, куда передаем info_dict с постами и полем для даты  
       url(r'^sitemap.xml$', 'django.contrib.sitemaps.views.sitemap',
        {'sitemaps': {'blog': GenericSitemap(info_dict, priority=0.8)}}),
]

В результате наш sitemap.xml будет выглядеть следующим образом.

comments powered by Disqus