summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarc Tamlyn <marc.tamlyn@gmail.com>2013-05-19 03:27:33 -0700
committerMarc Tamlyn <marc.tamlyn@gmail.com>2013-05-19 03:27:33 -0700
commit886f7cc751523caf335c1d59c3cdcef7950cb923 (patch)
tree92df97308e38d1bb8b9df01d980d615f67a7d576
parent753edfa4b5cf46be5fc1f04d80c25f30b18af798 (diff)
parentd77082b43877b4df0f29fa977b73b7b4feab84d4 (diff)
Merge pull request #1098 from zsiciarz/ticket-16829
Added example of using sitemaps with static views.
-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
========================