python - 站点地图中的优先级问题

标签 python django sitemap

我正在尝试使用 Django 站点地图。

class BlogSiteMap(Sitemap):
    """A simple class to get sitemaps for blog"""

    changefreq = 'hourly'
    priority = 0.5

    def items(self):
        return Blog.objects.order_by('-pubDate')

    def lastmod(self, obj):
        return obj.pubDate

我的问题是..我想将前 3 个博客对象的优先级设置为 1.0,其余的 优先级为 0.5。

我读了documentation但又没有办法摆脱它。

任何帮助将不胜感激。提前致谢。

最佳答案

我认为你可以改变每个对象的优先级。例如:

def items(self):
    for i, obj in enumerate(Blog.objects.order_by('-pubDate')):
       obj.priority = i < 3 and 1 or 0.5
       yield obj

def priority(self, obj):
    return obj.priority

关于python - 站点地图中的优先级问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/763485/

相关文章:

python - UnicodeEncodeError - 在 Spyder 中有效,但从终端执行时无效

python - 如何将模板包含到 django 包中?

python - 为什么我的 Django 工厂函数在本地数据库中创建模型,而不是测试数据库?

javascript - 谷歌控制台 Node 中的站点地图 xml

wordpress - 是什么导致了我的 Yoast SEO 站点地图上的 500 错误?

Python-Flask - 如何在不指定目录的情况下访问 pythonanywhere.com 上的 sqlite database.db?

python - 已经安装了 `zlib`但仍然出现错误。运行时错误: Compression requires the (missing) zlib module

xml - 站点地图中 urlset 标记的 xmlns 属性值应该是多少?

Python 脚本失败并下降 0 CPU 使用率

html - django模板语言系统中图片标签和源的使用方法