Add sitemap
This commit is contained in:
parent
97f2564293
commit
191fc0780c
3 changed files with 30 additions and 0 deletions
|
@ -37,6 +37,7 @@ INSTALLED_APPS = [
|
|||
'django.contrib.sessions',
|
||||
'django.contrib.messages',
|
||||
'django.contrib.staticfiles',
|
||||
'django.contrib.sitemaps',
|
||||
'imagekit',
|
||||
'django_cleanup',
|
||||
'gallery'
|
||||
|
|
|
@ -1,10 +1,18 @@
|
|||
from django.conf import settings
|
||||
from django.conf.urls.static import static
|
||||
from django.contrib import admin
|
||||
from django.contrib.sitemaps.views import sitemap
|
||||
from django.urls import include, path
|
||||
from django.views.generic import RedirectView
|
||||
|
||||
from gallery.sitemaps import AlbumSitemap
|
||||
|
||||
sitemaps = {
|
||||
'albums': AlbumSitemap,
|
||||
}
|
||||
|
||||
urlpatterns = [
|
||||
path("sitemap.xml", sitemap, {'sitemaps': sitemaps}, name='django.contrib.sitemaps.views.sitemap'),
|
||||
path('admin/', admin.site.urls),
|
||||
path('favicon.ico/', RedirectView.as_view(url='/static/favicon.ico', permanent=True)),
|
||||
path('', include(('gallery.urls', 'gallery'), namespace='gallery')),
|
||||
|
@ -15,3 +23,6 @@ if settings.DEBUG:
|
|||
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
18
gallery/sitemaps.py
Normal file
18
gallery/sitemaps.py
Normal file
|
@ -0,0 +1,18 @@
|
|||
from django.contrib.sitemaps import Sitemap
|
||||
from django.urls import reverse
|
||||
|
||||
from .models import Album
|
||||
|
||||
|
||||
class AlbumSitemap(Sitemap):
|
||||
changefreq = "monthly"
|
||||
priority = 0.8
|
||||
|
||||
def items(self):
|
||||
return Album.objects.filter(is_public=True)
|
||||
|
||||
def lastmod(self, obj):
|
||||
return obj.album_date
|
||||
|
||||
def location(self, obj):
|
||||
return reverse('gallery:album_url', kwargs={'album_slug': obj.slug})
|
Loading…
Add table
Reference in a new issue