Django生成网站地图

第一步:注册地图应用

INSTALLED_APPS = [
    # 站点地图
    'django.contrib.sitemaps',
]

第二步:根目录编写路由
sitemaps是一个字典:


from django.contrib.sitemaps.views import sitemap

sitemaps = {
    'dynamic':BlogSitemap,
}

urlpatterns = [

    path('sitemap.xml', sitemap, {'sitemaps': sitemaps},
         name='django.contrib.sitemaps.views.sitemap')
]

第三步:根目录下新建sitemaps.py文件

from django.contrib import sitemaps
from index import models


# 动态
class DynamicSitemap(sitemaps.Sitemap):
    changefreq = "daily"
    priority = 0.7

    def items(self):
        return models.Article.objects.all()

    def location(self, obj):
        return "/index/article/1/" + obj.range_str

    def lastmod(self, obj):
        return obj.update_time

浏览器中可以直接访问:./sitemap.xml 文件了

你可能感兴趣的:(后端pythondjango)