path(
'sitemap.xml',
sitemap, {
'sitemaps': sitemaps
}, name='django.contrib.sitemaps.views.sitemap'
),
上面的例子是我在项目级urls.py
中的站点地图配置
from django.contrib.sitemaps import Sitemap
from .models import Post
class PostSitemap(Sitemap):
changefreq = 'always'
priority = 0.9
protocol = 'https'
limit = 5
def items(self):
return Post.aupm.all()
def lastmod(self, obj):
return obj.updated
以上代码适用于应用程序级别的sitemaps.py
生成该代码的
<urlset>
<url>
<loc>
https://localhost:8000/en/kavi/lobaan-ke-5-laabh-aur-upyog-aur-7-mithk-0x76/
</loc>
<lastmod>2022-01-28</lastmod>
<changefreq>always</changefreq>
<priority>0.9</priority>
</url>
<url>
我想要的是:
- 如果我在该应用程序中的50000(五万(个元素中有更多的元素,该怎么办
- 如果我想从diffrent应用程序添加更多元素(即网站地图(
是的,可以使用站点地图索引。来自文档:
站点地图框架还能够创建引用单个站点地图文件的站点地图索引,
sitemaps
字典中定义的每个部分一个。使用上唯一的区别是:
- 在
URLconf
中使用两个视图:django.contrib.sitemaps.views.index()
和django.contrib.sitemaps.views.sitemap()
django.contrib.sitemaps.views.sitemap()
视图应采用section关键字参数
请在此处查看更多信息。