我不认为这实际上是可行的,但有没有干净整洁的方法来获取使用Django站点地图的分页内容?
例如,我的目标网页上有新闻,而且新闻帖子没有永久链接,使用它们的唯一方法是一次性分页5个。
另一部分获取各种类型和其他标准的项目列表。
如果不可能,处理它的最佳方法是什么?不为这些网站地图提供网址?只获得分页页面的第一页?
我最好的想法是,我应该将登录页面作为网址,而不是对列表页面感到烦恼,因为它们并不是真正重要的搜索引擎。但如果这是最好的行动方案,我怎样才能从站点地图框架中提供到目标网页的链接?
欢迎任何建议。
答案 0 :(得分:6)
我使用以下代码在XML站点地图中为我的分页列表视图添加了网址:
from django.conf import settings
from django.contrib.sitemaps import Sitemap
from django.core.paginator import Paginator
from django.core.urlresolvers import reverse
class ArticleListSitemap(Sitemap):
def items(self):
objects = Article.objects.all()
paginator = Paginator(objects, settings.ARTICLE_PAGINATE_BY)
return paginator.page_range
def location(self, page):
return reverse('article_list', kwargs={'page': page})