Skip to content

Provides a set of tools for managing Search Engine Optimisation (SEO) metadata for Django sites.

License

Notifications You must be signed in to change notification settings

romansalin/django-seo2

Repository files navigation

django-seo2

https://travis-ci.org/romansalin/django-seo2.svg?branch=master https://coveralls.io/repos/romansalin/django-seo2/badge.svg?branch=master&service=github Code Health Documentation Status

Overview

This is a set of powerful and flexible SEO tools for Django. It allows you to associate metadata with:

  • absolute paths
  • model instances
  • model classes
  • views

Metadata can be edited in the Django Admin in a centralised place, but also alongside any associated models.

This is however a framework, not an app. To use this library, you need to define the metadata you want and add the output to your templates. Everything else (retrieval, formatting, escaping, caching) is handled for you. Therefore, you have complete control over the data you store.

As requirements change, it may become necessary to add new metadata fields. Having the metadata definition confined to a single, short class means that it is easy to update.

Requirements

  • Python (2.7, 3.3, 3.4, 3.5)
  • Django (1.7, 1.8, 1.9)

Installation

The easiest way to install django-seo2 is to use use pip:

pip install django-seo2

Example

Here is an example of a definition:

from djangoseo import seo

class BasicMetadata(seo.Metadata):
    title = seo.Tag(max_length=68, head=True)
    keywords = seo.KeywordTag()
    description = seo.MetaTag(max_length=155)
    heading = seo.Tag(name="h1")
    subheading = seo.Tag(name="h2")
    extra = seo.Raw(head=True)

    # Adding some fields for facebook (opengraph)
    og_title = seo.MetaTag(name="og:title",
                           populate_from="title",
                           verbose_name="facebook title")
    og_description = seo.MetaTag(name="og:description",
                                 populate_from="description",
                                 verbose_name='facebook description')

As you can see it is very flexible, but there is much more than this simple example.

The full documentation can be read online at http://django-seo2.readthedocs.org/.

History

This is a fork of django-seo, which is no longer maintained.

About

Provides a set of tools for managing Search Engine Optimisation (SEO) metadata for Django sites.

Resources

License

Stars

Watchers

Forks

Packages

No packages published