# settings.py 添加 apps: 'django.contrib.sites', 'django.contrib.sitemaps',
INSTALLED_APPS = [ 'django.contrib.sites', 'django.contrib.sitemaps', ] TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [ os.path.join(BASE_DIR, 'templates').replace('\\', '/') # 设置模版路径 ] , 'APP_DIRS': True, # 设置为 True 'OPTIONS': { 'context_processors': [ 'django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages', ], }, }, ]
# sitmaps.py
#!/usr/bin/env python3 # -*- coding: utf-8 -*- """ @author: yinzhuoqun @site: http://zhuoqun.info/ @email: yin@zhuoqun.info @time: 2018/8/7 17:34 """ # from django.contrib.sitemaps import Sitemap from django.contrib import sitemaps from blog.models import Article, Tag, Node, Classifing, CommentTemporary, Quotations from django.contrib.sitemaps import GenericSitemap from django.urls import reverse class StaticViewSitemap(sitemaps.Sitemap): priority = 0.5 # 权重 changefreq = 'daily' # 更新频率 def items(self): return ['blog:index', ] def location(self, item): return reverse(item) class ArticleSiteMap(sitemaps.Sitemap): """ items (必需 ):提供对象列表。 框架并不关心对象的 类型 ;唯一关心的是这些对象会传递给 location() , lastmod() , changefreq() ,和 priority() 方法。 """ changefreq = "monthly" priority = "0.6" def items(self): return Article.objects.filter(show_status=True) def lastmod(self, obj): return obj.time_updated
# urls.py
from .sitemaps import StaticViewSitemap, ArticleSiteMap # sitemaps sitemaps = { 'static': StaticViewSitemap, 'blog': ArticleSiteMap, } urlpatterns = [ url(r'^sitemap\.xml$', sitemap, {'sitemaps': sitemaps}, name='django.contrib.sitemaps.views.sitemap'), ]
# settings.py, SITE_ID 设置 xml 中 loc 显示的值,django sitemap.xml 修改 loc 显示的 example.com
# django_site 表的 ID 值, 1 是 zhuoqun.info, 2 是 xieboke.net SITE_ID = 2
Zhuoyuebiji ( 广东·深圳 )
🚩成长的时候,能帮有需要的你
我是 卓越笔记,软件测试工作者,热爱互联网,喜欢琢磨,遇到问题就一定要找到答案。我的博客主要记录学习中遇到的知识点和遇到的问题及问题的解决方法。欢迎同样热爱互联网的小伙伴们交换友链,一起探索互联网的世界 😊
为向您提供更好的服务,我们使用 Cookies。更多相关信息请查阅我们的 隐私政策 和 免责声明