Skip to main content
# Django PainlessSEO

[![Code Climate](https://codeclimate.com/github/Glamping-Hub/django-painless-seo/badges/gpa.svg)](https://codeclimate.com/github/Glamping-Hub/django-painless-seo)

A painless way to add SEO information to your Django site.

## Features

This app provides two ways of adding SEO metadata to your django site:

- Absolute paths
- Model instances

It's fully integrated with the admin site including inline forms for models.
It also includes support for multiple languages and localized URLs, and having
several sites.

## Requirements

Django >= 1.5.0

## Installation

The Git repository can be cloned with this command:

git clone https://github.com/Glamping-Hub/django-painless-seo.git

The `painlessseo` package included in the distribution should be placed on the
`PYTHONPATH`. Add `painlessseo` to the `INSTALLED_APPS` in your *settings.py*.
Run `syncdb` command to create the needed tables.

## Settings

PainlessSEO uses two configuration variables in order to define the default
information that will be displayed if the URL has no SEO metadata related. You
have to add them to your *settings.py*:

SEO_DEFAULT_TITLE = 'Lorem ipsum title'
SEO_DEFAULT_DESCRIPTION = 'Lorem ipsum description'

### Registering Models

To create synced SEO metadata for model instances you have to define the
`SEO_MODELS` variable in your *settings.py* like this:

SEO_MODELS = (
('myapp', 'mymodel'),
('anotherapp', 'anothermodel'),
)

After registering the models, you can add the inline form to the admin instance
for each model:

from painlessseo.admin import SeoMetadataInline

class MyModelAdmin(admin.ModelAdmin):
inlines = [SeoMetadataInline, ]

Now every time you save a model instance through the admin site, the SEO
metadata will be updated automatically.

## SEO Output

As simple as loading the `seo` template library and using the `get_seo`
template tag like this:

{% load seo %}

<head>
{% get_seo %}
</head>

## Notes

[Why PainlessSEO does not include keywords meta tag](http://googlewebmastercentral.blogspot.in/2009/09/google-does-not-use-keywords-meta-tag.html).

## Legal Stuff

This software is licensed under the terms of the BSD 3-clause license. You can
find the whole text of the license in the LICENSE file.

Metadata

Release files for django-painless-seo 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for django-painless-seo 0.2.0
File Size Uploaded Provenance
django-painless-seo-0.2.0.tar.gz 5.6 kB Without provenance Details

Release files / django-painless-seo-0.2.0.tar.gz

Download URL django-painless-seo-0.2.0.tar.gz
Size 5.6 kB
Tags Source
SHA-256 checksum
How to use checksums
a1ad0b6fcb536467c6618d1711420f544c1a16887480270ae53d7b90c609f2c1
BLAKE2b-256 checksum
How to use checksums
df7f6d2c9248ab71cdc15f2ec0d30ab5aef2c308e57d3fcc1a2b1efc6e9783e2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for django-painless-seo 0.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page