def items(self):
        """
        Consider all pages that are active and that are not a redirect
        """

        base_qs = self.queryset
        if callable(base_qs):
            base_qs = base_qs()

        self.max_depth = base_qs.aggregate(Max("level"))["level__max"] or 0
        if self.depth_cutoff > 0:
            self.max_depth = min(self.depth_cutoff, self.max_depth)

        qs = base_qs.filter(redirect_to="")
        if self.filter:
            qs = self.filter(qs)
        if self.navigation_only:
            qs = qs.filter(in_navigation=True)
        if self.depth_cutoff > 0:
            qs = qs.filter(level__lte=self.max_depth - 1)

        pages = [p for p in qs if p.is_active()]

        if self.extended_navigation:
            for idx, page in enumerate(pages):
                if self.depth_cutoff > 0 and page.level == self.max_depth:
                    continue
                if getattr(page, "navigation_extension", None):
                    cnt = 0
                    for p in page.extended_navigation():
                        depth_too_deep = (
                            self.depth_cutoff > 0 and p.level > self.depth_cutoff
                        )
                        not_in_nav = self.navigation_only and not p.in_navigation
                        if depth_too_deep or not_in_nav:
                            continue
                        cnt += 1
                        pages.insert(idx + cnt, p)
                        if p.level > self.max_depth:
                            self.max_depth = p.level

        self.per_level = 1.0 / (self.max_depth + 1.0)
        return pages

        Consider all pages that are active and that are not a redirect
        
feincms/module/page/sitemap.py