Add a package groups sitemap
Signed-off-by: Dan McGee <dan@archlinux.org>
This commit is contained in:
parent
d21de73592
commit
e595665abd
19
sitemaps.py
19
sitemaps.py
@ -1,8 +1,9 @@
|
||||
from django.contrib.sitemaps import Sitemap
|
||||
from main.models import Package, News
|
||||
from packages.views import get_group_information
|
||||
|
||||
class PackagesSitemap(Sitemap):
|
||||
changefreq = "monthly"
|
||||
changefreq = "weekly"
|
||||
priority = "0.5"
|
||||
|
||||
def items(self):
|
||||
@ -14,6 +15,7 @@ def lastmod(self, obj):
|
||||
|
||||
|
||||
class PackageFilesSitemap(PackagesSitemap):
|
||||
changefreq = "monthly"
|
||||
priority = "0.3"
|
||||
|
||||
def location(self, obj):
|
||||
@ -23,6 +25,20 @@ def lastmod(self, obj):
|
||||
return obj.files_last_update
|
||||
|
||||
|
||||
class PackageGroupsSitemap(Sitemap):
|
||||
changefreq = "weekly"
|
||||
priority = "0.4"
|
||||
|
||||
def items(self):
|
||||
return get_group_information()
|
||||
|
||||
def lastmod(self, obj):
|
||||
return obj['last_update']
|
||||
|
||||
def location(self, obj):
|
||||
return '/groups/%s/%s/' % (obj['arch'], obj['name'])
|
||||
|
||||
|
||||
class NewsSitemap(Sitemap):
|
||||
changefreq = "never"
|
||||
priority = "0.7"
|
||||
@ -34,4 +50,3 @@ def lastmod(self, obj):
|
||||
return obj.postdate
|
||||
|
||||
# vim: set ts=4 sw=4 et:
|
||||
|
||||
|
9
urls.py
9
urls.py
@ -8,12 +8,13 @@
|
||||
|
||||
from main.models import Todolist
|
||||
from feeds import PackageFeed, NewsFeed
|
||||
from sitemaps import NewsSitemap, PackagesSitemap, PackageFilesSitemap
|
||||
import sitemaps
|
||||
|
||||
sitemaps = {
|
||||
'news': NewsSitemap,
|
||||
'packages': PackagesSitemap,
|
||||
'package-files': PackageFilesSitemap,
|
||||
'news': sitemaps.NewsSitemap,
|
||||
'packages': sitemaps.PackagesSitemap,
|
||||
'package-files': sitemaps.PackageFilesSitemap,
|
||||
'package-groups': sitemaps.PackageGroupsSitemap,
|
||||
}
|
||||
|
||||
admin.autodiscover()
|
||||
|
Loading…
Reference in New Issue
Block a user