summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorZbigniew Siciarz <antyqjon@gmail.com>2013-05-18 14:22:40 +0200
committerZbigniew Siciarz <antyqjon@gmail.com>2013-05-18 14:27:29 +0200
commitd77082b43877b4df0f29fa977b73b7b4feab84d4 (patch)
treee2c8b0cad76586a1477649d1621b865c98717e56 /docs
parent16683f29ea81e1e979ee88c79cbef279046dd8b1 (diff)
Added example of using sitemaps with static views.
References #16829.
Diffstat (limited to 'docs')
-rw-r--r--docs/ref/contrib/sitemaps.txt40
1 files changed, 40 insertions, 0 deletions
diff --git a/docs/ref/contrib/sitemaps.txt b/docs/ref/contrib/sitemaps.txt
index d37ee83378..56a15cb9e0 100644
--- a/docs/ref/contrib/sitemaps.txt
+++ b/docs/ref/contrib/sitemaps.txt
@@ -280,6 +280,46 @@ Here's an example of a :doc:`URLconf </topics/http/urls>` using both::
.. _URLconf: ../url_dispatch/
+Sitemap for static views
+========================
+
+Often you want the search engine crawlers to index views which are neither
+object detail pages nor flatpages. The solution is to explicitly list URL
+names for these views in ``items`` and call
+:func:`~django.core.urlresolvers.reverse` in the ``location`` method of
+the sitemap. For example::
+
+ # sitemaps.py
+ from django.contrib import sitemaps
+ from django.core.urlresolvers import reverse
+
+ class StaticViewSitemap(sitemaps.Sitemap):
+ priority = 0.5
+ changefreq = 'daily'
+
+ def items(self):
+ return ['main', 'about', 'license']
+
+ def location(self, item):
+ return reverse(item)
+
+ # urls.py
+ from django.conf.urls import patterns, url
+ from .sitemaps import StaticViewSitemap
+
+ sitemaps = {
+ 'static': StaticViewSitemap,
+ }
+
+ urlpatterns = patterns('',
+ url(r'^$', 'views.main', name='main'),
+ url(r'^about/$', 'views.about', name='about'),
+ url(r'^license/$', 'views.license', name='license'),
+ # ...
+ url(r'^sitemap\.xml$', 'django.contrib.sitemaps.views.sitemap', {'sitemaps': sitemaps})
+ )
+
+
Creating a sitemap index
========================