Added blog sitemap
This commit is contained in:
parent
45c59f0707
commit
05d77e7c05
|
@ -28,7 +28,7 @@ DJANGO_APPS = (
|
|||
'django.contrib.sessions',
|
||||
'django.contrib.sites',
|
||||
'django.contrib.messages',
|
||||
'whitenoise.runserver_nostatic',
|
||||
'django.contrib.sitemaps',
|
||||
'django.contrib.staticfiles',
|
||||
'django.contrib.humanize',
|
||||
'django.contrib.admin',
|
||||
|
@ -41,6 +41,7 @@ THIRD_PARTY_APPS = (
|
|||
'allauth.socialaccount.providers.google', # registration
|
||||
'allauth.socialaccount.providers.github', # registration
|
||||
'allauth.socialaccount.providers.facebook', # registration
|
||||
'whitenoise.runserver_nostatic',
|
||||
'stdimage',
|
||||
'rest_framework',
|
||||
'draceditor',
|
||||
|
|
|
@ -8,6 +8,7 @@ from django.contrib import admin
|
|||
from django.views.generic import TemplateView
|
||||
from django.views import defaults as default_views
|
||||
from django.contrib.auth import views as auth_views
|
||||
from django.contrib.sitemaps.views import sitemap
|
||||
from rest_framework.routers import DefaultRouter
|
||||
|
||||
from mhackspace.contact.views import contact
|
||||
|
@ -17,6 +18,7 @@ from mhackspace.base.feeds import LatestEntriesFeed
|
|||
from mhackspace.blog.feeds import BlogFeed, BlogCategoryFeed
|
||||
from mhackspace.base.views import markdown_uploader
|
||||
from mhackspace.blog.views import blog, PostViewSet, CategoryViewSet
|
||||
from mhackspace.blog.sitemaps import PostSitemap, CategorySitemap
|
||||
from mhackspace.feeds.views import FeedViewSet, ArticleViewSet
|
||||
|
||||
router = DefaultRouter()
|
||||
|
@ -25,6 +27,11 @@ router.register(r'categories', CategoryViewSet)
|
|||
router.register(r'feeds', FeedViewSet)
|
||||
router.register(r'articles', ArticleViewSet)
|
||||
|
||||
sitemaps = {
|
||||
'posts': PostSitemap,
|
||||
'category': CategorySitemap,
|
||||
}
|
||||
|
||||
urlpatterns = [
|
||||
url(r'^$', TemplateView.as_view(template_name='pages/home.html'), name='home'),
|
||||
url(r'^about/$', TemplateView.as_view(template_name='pages/about.html'), name='about'),
|
||||
|
@ -44,7 +51,8 @@ urlpatterns = [
|
|||
url(r'^blog/(?P<slug>[0-9A-Za-z_\-]+)/$', blog, name='blog-item'),
|
||||
url(r'^blog/category/(?P<category>[0-9A-Za-z_\-]+)/$', blog, name='blog-category'),
|
||||
url(r'^blog/category/(?P<category>[0-9A-Za-z_\-]+)/rss/$', BlogCategoryFeed(), name='blog-category-feed'),
|
||||
|
||||
url(r'^sitemap\.xml$', sitemap, {'sitemaps': sitemaps},
|
||||
name='django.contrib.sitemaps.views.sitemap'),
|
||||
|
||||
# need to be logged in for these urls
|
||||
url(r'^members/$', MemberListView.as_view(), name='members'),
|
||||
|
|
|
@ -0,0 +1,19 @@
|
|||
from django.contrib.sitemaps import Sitemap
|
||||
from mhackspace.blog.models import Category, Post
|
||||
|
||||
class PostSitemap(Sitemap):
|
||||
changefreq = "monthly"
|
||||
priority = 0.5
|
||||
|
||||
def items(self):
|
||||
return Post.objects.filter(active=True, members_only=False)
|
||||
|
||||
def lastmod(self, obj):
|
||||
return obj.published_date
|
||||
|
||||
class CategorySitemap(Sitemap):
|
||||
changefreq = "monthly"
|
||||
priority = 0.7
|
||||
|
||||
def items(self):
|
||||
return Category.objects.all()
|
Loading…
Reference in New Issue