带有分页内容的 Django 站点地图

发布于 2024-12-03 20:06:04 字数 316 浏览 2 评论 0原文

我不认为这实际上是可能的,但是有没有任何干净整洁的方法来获取与 Django 站点地图一起使用的分页内容?

例如,我的目标网页上有新闻,并且没有新闻帖子的永久链接,使用它们的唯一方法是一次对所有新闻帖子进行分页。

另一部分获取各种类型和其他标准的项目列表。

如果不可能,最好的处理方法是什么?不提供这些网站地图的网址?只获取分页页面的第一页?

我最好的想法是,我应该只将登陆页面作为 URL,而不用担心列表页面,因为它们在搜索引擎方面并不是非常重要。但如果这是最好的做法,我怎样才能在站点地图框架内提供到登陆页面的链接呢?

欢迎任何建议。

I don't think this is actually possible, but is there any clean and tidy way to get paginated content working with Django sitemaps?

For example, my landing page has news on it, and there are no permalinks to news posts, the only way to use them is to paginate 5 at a time through them all.

Another part gets lists of items in various genres and other criteria.

If it isn't possible, what is the best way to handle it? To not provide urls to the sitemap for any of these? To get just the first page for paginated pages?

My best idea is that I should just give the landing page as an url, and not bother with the listing pages at all since they aren't really important search engine-wise. But if this is the best course of action, how can I just provide a link to the landing page from within the sitemaps framework?

Any suggestions are welcome.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

如歌彻婉言 2024-12-10 20:06:04

我使用以下代码在 XML 站点地图中包含了分页列表视图的 url:

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})

I've included urls for my paginated list views in the XML sitemap using the following code:

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})
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文