我的django项目中有这个。
在views.py
:
class MediatorViewSitemap(Sitemap):
changefreq = 'monthly'
priority = 0.8
def items(self):
return Mediator.objects.exclude(photo='')
def lastmod(self, obj):
return obj.modified
static_list =[
'home',
'mediators_list',
'about',
'faq',
'pricing',
'terms',
'privacy',
'contact',
]
class StaticViewSitemap(Sitemap):
priority = 0.5
changefreq = 'daily'
def items(self):
return static_list
def location(self, item):
return reverse(item)
这是我的urls.py
sitemaps = {
'mediators': MediatorViewSitemap,
'static': StaticViewSitemap
}
url(
r'^sitemap\.xml$', sitemap, {'sitemaps': sitemaps},
name='django.contrib.sitemaps.views.sitemap'
),
它生成的sitemap.xml
现在我已将djangocms集成到我的django项目中,所以我在同一个urls.py
中有这个网址:
url(r'^blog/', include('cms.urls')),
我想要的是将它添加到同一个sitemap.xml
,任何教程的任何建议或任何人的帮助?
答案 0 :(得分:0)
导入CMSSitemap
,如from cms.sitemaps import CMSSitemap
,然后将其与您的Sitemap
类混合;
sitemaps = {
'mediators': MediatorViewSitemap,
'static': StaticViewSitemap,
'cmspages': CMSSitemap
}
url(
r'^sitemap\.xml$', 'django.contrib.sitemaps.views.sitemap',
{'sitemaps': sitemaps}
),
有一个软件包可以从CMS核心开发团队中扩展站点地图,这可能对您有用; https://github.com/nephila/djangocms-page-sitemap/