diff options
-rw-r--r-- | sitemaps.py | 13 | ||||
-rw-r--r-- | urls.py | 13 |
2 files changed, 20 insertions, 6 deletions
diff --git a/sitemaps.py b/sitemaps.py index 256f7101..25b48c68 100644 --- a/sitemaps.py +++ b/sitemaps.py @@ -3,7 +3,7 @@ from main.models import Package, News class PackagesSitemap(Sitemap): changefreq = "monthly" - priority = "0.4" + priority = "0.5" def items(self): return Package.objects.select_related('arch', 'repo').all() @@ -12,6 +12,17 @@ class PackagesSitemap(Sitemap): def lastmod(self, obj): return obj.last_update + +class PackageFilesSitemap(PackagesSitemap): + priority = "0.3" + + def location(self, obj): + return PackagesSitemap.location(self, obj) + 'files/' + + def lastmod(self, obj): + return obj.files_last_update + + class NewsSitemap(Sitemap): changefreq = "never" priority = "0.7" @@ -8,17 +8,18 @@ from django.contrib.auth.decorators import permission_required from main.models import Todolist from feeds import PackageFeed, NewsFeed -from sitemaps import NewsSitemap, PackagesSitemap +from sitemaps import NewsSitemap, PackagesSitemap, PackageFilesSitemap feeds = { + 'news': NewsFeed, 'packages': PackageFeed, - 'news': NewsFeed } sitemaps = { - 'news': NewsSitemap, - 'packages': PackagesSitemap, + 'news': NewsSitemap, + 'packages': PackagesSitemap, + 'package-files': PackageFilesSitemap, } admin.autodiscover() @@ -82,7 +83,9 @@ urlpatterns = patterns('', (r'^feeds/$', 'public.views.feeds'), (r'^feeds/(?P<url>.*)/$', 'django.contrib.syndication.views.feed', {'feed_dict': feeds}), - (r'^sitemap.xml$', 'django.contrib.sitemaps.views.sitemap', + (r'^sitemap.xml$', 'django.contrib.sitemaps.views.index', + {'sitemaps': sitemaps}), + (r'^sitemap-(?P<section>.+)\.xml$', 'django.contrib.sitemaps.views.sitemap', {'sitemaps': sitemaps}), # Authentication / Admin |