From 8541adc3d9ddfc5d780de5714c4c9d3b331e4280 Mon Sep 17 00:00:00 2001 From: Jean-Marie Favreau Date: Sat, 25 Jan 2025 19:24:42 +0100 Subject: [PATCH] =?UTF-8?q?On=20ajoute=20les=20pages=20des=20cat=C3=A9gori?= =?UTF-8?q?es=20aux=20sitemap?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/agenda_culturel/sitemaps.py | 27 ++++++++++++++++++++++++++- src/agenda_culturel/urls.py | 6 +++++- 2 files changed, 31 insertions(+), 2 deletions(-) diff --git a/src/agenda_culturel/sitemaps.py b/src/agenda_culturel/sitemaps.py index bc74502..23d9b08 100644 --- a/src/agenda_culturel/sitemaps.py +++ b/src/agenda_culturel/sitemaps.py @@ -1,6 +1,7 @@ from django.contrib import sitemaps from django.urls import reverse +from .models import Category class StaticViewSitemap(sitemaps.Sitemap): priority = 0.5 @@ -10,4 +11,28 @@ class StaticViewSitemap(sitemaps.Sitemap): return ["home", "cette_semaine", "ce_mois_ci", "aujourdhui", "a_venir", "about", "contact"] def location(self, item): - return reverse(item) \ No newline at end of file + return reverse(item) + +class HomeCategorySitemap(sitemaps.Sitemap): + priority = 0.5 + changefreq = "daily" + path = "home_category" + + def items(self): + result = [] + return Category.objects.values_list("slug", flat=True) + + def location(self, item): + return reverse(self.path, kwargs={'cat': item}) + +class MonthCategorySitemap(HomeCategorySitemap): + priority = 0.3 + path = "ce_mois_ci_category" + +class WeekCategorySitemap(HomeCategorySitemap): + priority = 0.4 + path = "cette_semaine_category" + +class UpcomingCategorySitemap(HomeCategorySitemap): + priority = 0.4 + path = "a_venir_category" diff --git a/src/agenda_culturel/urls.py b/src/agenda_culturel/urls.py index 81c9e07..fed95d6 100644 --- a/src/agenda_culturel/urls.py +++ b/src/agenda_culturel/urls.py @@ -6,7 +6,7 @@ from django.urls import path, include, re_path from django.views.i18n import JavaScriptCatalog from django.contrib.sitemaps.views import sitemap from django.contrib.sitemaps import GenericSitemap -from .sitemaps import StaticViewSitemap +from .sitemaps import * from django.views.decorators.cache import cache_page from .views import * @@ -31,6 +31,10 @@ sitemaps = { "events": GenericSitemap(event_dict, priority=1.0), "places": GenericSitemap(place_dict, priority=0.6), "categories": GenericSitemap(category_dict, priority=0.8), + "home_categories": HomeCategorySitemap, + "upcoming_categories": UpcomingCategorySitemap, + "week_categories": WeekCategorySitemap, + "month_categories": MonthCategorySitemap, "organisations": GenericSitemap(organisation_dict, priority=0.2), }