/django-classified

Django Classified

Primary LanguagePythonMIT LicenseMIT

Django Classified

Features

  • Item groups, categories and areas (for ex. Cities ot Locations)
  • Image
  • Search ability
  • SEO optimization
    • SEO-friendly urls
    • generating META description and meta keywords
    • sitemap.xml
    • robots.txt
    • RSS feed
    • Google Analytics integration
    • Open Graph protocol support
  • Caching
  • Translation

Requirements

  • Python >=3.8
  • Django >=3.2

Design

Demo project

Demo project with user registration (via Email/Facebook) available here.

Installation

  • Install app pip install django-classified
  • Add django_classified to the INSTALLED_APPS:
INSTALLED_APPS = [
    # Default Django applications
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.messages',
    'django.contrib.sessions',
    'django.contrib.staticfiles',

     # Required by Django Classified
    'django.contrib.sites',
    'django.contrib.humanize',
    'django.contrib.sitemaps',

     # External applications required by Django Classified
    'bootstrapform',
    'sorl.thumbnail',

    # Django Classified
    'django_classified',
]
  • Add SITE_ID to settings.py file:
SITE_ID = 1
  • Import include in addition to path and add url(r'', include('django_classified.urls', namespace='django_classified')), to the project urls.py file:
from django.urls import path, include

urlpatterns = patterns(
    path(r'', include('django_classified.urls', namespace='django_classified')),
)
  • Add 'django_classified.context_processors.common_values' to the settings TEMPLATES context_processors list:
TEMPLATES[0]['OPTIONS']['context_processors'].append('django_classified.context_processors.common_values')

Customization:

You can provide additional customization in settings.py

  • DCF_SITE_NAME - Site title
  • DCF_SITE_DESCRIPTION - Site description
  • DCF_ITEM_PER_USER_LIMIT - Max Items allowed per user
  • DCF_SITEMAP_LIMIT - Sitemap items limit
  • DCF_RSS_LIMIT - RSS feed items limit
  • DCF_RELATED_LIMIT - Number of related items displayed
  • DCF_ITEM_PER_PAGE - Number of items per page
  • DCF_LOGIN_TO_CONTACT - Hide contact information for unauthorized requests
  • DCF_DISPLAY_EMPTY_GROUPS - Display groups without items in the groups list

Credits