正常情况下是时间倒序,Django 的 order_by() 支持多参数排序,把置顶参数放在时间参数前面即可:

NewsPage.objects.live().order_by('-hot', '-first_published_at')