sitemap

Python
settings.py
INSTALLED_APPS = [ ‘django.contrib.sites’, ‘django.contrib.sitemap’,]SITE_ID = 1
pj/pj/urls.py
from django.contrib import adminfrom django.contrib.sitemaps import Sitemapfrom django.contrib.sitemaps.views import sitemapfrom django.shortcuts import resolve_urlfrom app.models  import App
class PostSitemap(Sitemap): changefreq = “never”priority = 0.5
def items(self): return App.objects.all() def location(self, obj): return resolve_url(‘app:detail’, pk=obj.pk) def lastmod(self, obj): return obj.created_datetime
Class StatiSitemap(Sitemap):    Changefreq = “never”    Priority = 0.5
    Def items(self): return [‘app:index’]    Def location(self, obj): return resolve_url(obj)
sitemaps = { ‘posts’: PostSitemap, ‘static’: StaticSitemap,}
urlpatterns = [ path(‘sitemap.xml/’, sitemap, {‘sitemaps’:sitemaps}, name=’sitemap’),]
models.py
from django.contrib.sitemaps import ping_googleclass App(models.Model): ~~~ def __str__(self): return self.title def save(self, *args, **kwargs): super().save(*args, **kwargs) try: ping_google()     except Exception: pass

引用:https://blog.narito.ninja/detail/55

コッチの方がいいかも↓

https://medium.com/@kjmczk/django-sitemaps-75e1ed78398a

Herokuではsitemap.xmlを生成できても、サーチコンソールに認識してもらえないらしい

BACK