Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

# django_ogp

[![Build Status](https://travis-ci.org/ricardochaves/django_ogp.svg?branch=master)](https://travis-ci.org/ricardochaves/django_ogp) [![Coverage Status](https://coveralls.io/repos/github/ricardochaves/django_ogp/badge.svg)](https://coveralls.io/github/ricardochaves/django_ogp) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/3a1363cd34274377942b34418ed2b00a)](https://app.codacy.com/app/ricardochaves/django_ogp?utm_source=github.com&utm_medium=referral&utm_content=ricardochaves/django_ogp&utm_campaign=Badge_Grade_Dashboard) [![Maintainability](https://api.codeclimate.com/v1/badges/a2af8f7a30ad3bee2cac/maintainability)](https://codeclimate.com/github/ricardochaves/django_ogp/maintainability) [![Updates](https://pyup.io/repos/github/ricardochaves/django_ogp/shield.svg)](https://pyup.io/repos/github/ricardochaves/django_ogp/) [![Python 3](https://pyup.io/repos/github/ricardochaves/django_ogp/python-3-shield.svg)](https://pyup.io/repos/github/ricardochaves/django_ogp/) [![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/ambv/black) [![Packagist](https://img.shields.io/packagist/l/doctrine/orm.svg)](https://github.com/ricardochaves/django_ogp/blob/master/LICENSE) [![PyPI version](https://badge.fury.io/py/django-ogp.svg)](https://badge.fury.io/py/django-ogp)

A more dynamic way to register Open Graph protocol

## Why

This app is made to facilitate the SEO of *OnePage* sites. With it you will have an administrative ready to register the metas or if you prefer to include a dictionary in your `settings.py` with the values that must be loaded.

If there is a dictionary in the settings it will not use the database and you can hide the users' [OPG](http://ogp.me/) registration by the access level of the user/group.

Now you can create [OGPs](http://ogp.me/) in an easy way.

## Suported

The test matrix guarantees coverage for:

- pythos2·7 : Django 1.8
- pythos2·7 : Django 1.11
- pythos3·4 : Django 1.8
- pythos3·4 : Django 1.9
- pythos3·4 : Django 1.11
- pythos3·5 : Django 1.8
- pythos3·5 : Django 1.9
- pythos3·5 : Django 1.11
- pythos3·5 : Django 2.0
- pythos3·5 : Django 2.1
- pythos3·6 : Django 1.8
- pythos3·6 : Django 1.9
- pythos3·6 : Django 1.11
- pythos3·6 : Django 2.0
- pythos3·6 : Django 2.1
- pythos3·7 : Django 1.8
- pythos3·7 : Django 1.9
- pythos3·7 : Django 1.11
- pythos3·7 : Django 2.0
- pythos3·7 : Django 2.1

## Install

```bash
pip install django_opg
```

Add `django_opg` in `INSTALLED_APPS`:

```python
INSTALLED_APPS = [
...
"django_opg",
...
]
```

Execute:

```bash
python manage.py migrate
```

## Usage

Import `{% load ogp %}` and add `{% show_ogp %}`in your `<header>` tag

### Settings

You can include the metas straight into your settings. The app currently supports the following data:

```json
OGP = {
"og_title": "Ricardo Baltazar Chaves | Site",
"og_type": "website",
"og_description": "My personal site.",
"og_url": "https://www.ricardobaltazar.com/",
"locales": [{"og_locale_alternate": "en_US"}, {"og_locale_alternate": "pt_BR"}],
"images": [
{
"og_image": "https://www.ricardobaltazar.com/static/principal/images/profilepic-new.ac1b7deb01a8.jpg",
"og_image_url": "https://www.ricardobaltazar.com/static/principal/images/profilepic-new.ac1b7deb01a8.jpg",
"og_image_type": "image/jpeg",
"og_image_width": 100,
"og_image_height": 200,
"og_image_alt": "The Ricardo image",
},
{
"og_image": "https://www.ricardobaltazar.com/media/palestra_eventos/IMG_20170811_195143268.jpg.430x360_q85_box-679%2C0%2C3479%2C2340_crop_detail.jpg",
"og_image_url": "https://www.ricardobaltazar.com/media/palestra_eventos/IMG_20170811_195143268.jpg.430x360_q85_box-679%2C0%2C3479%2C2340_crop_detail.jpg",
"og_image_type": "image/jpeg",
"og_image_width": 300,
"og_image_height": 400,
"og_image_alt": "Ricardo Speech SEO",
},
],
}
```

### DataBase

If there is no `OGP` key in the settings, the application will fetch the data in the database.

The `BasicMeta` model is selected with `first()`, so only one record can exist to prevent data from being selected.


Metadata

Release files for django-ogp 0.0b7

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-ogp 0.0b7
File Size Uploaded
django_ogp-0.0b7.tar.gz 8.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for django-ogp 0.0b7
File Interpreter ABI Platform
django_ogp-0.0b7-py3-none-any.whl Python 3 none any Details

Total release size: 19.9 kB

Release files / django_ogp-0.0b7.tar.gz

Download URL django_ogp-0.0b7.tar.gz
Size 8.7 kB
Tags Source
SHA-256 checksum
How to use checksums
3397fc32af8c316ee74696f48ddb479c30e2032934e9351b03c9d3f13a8018c2
BLAKE2b-256 checksum
How to use checksums
1456af62449a903f1d3970573d0ee19b9eeb8b5131a00e99570f399ec803902b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.7.0

Release files / django_ogp-0.0b7-py3-none-any.whl

Download URL django_ogp-0.0b7-py3-none-any.whl
Size 11.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b0de146ca35f312153fb6aadef6bcc873a203a1635d4ef3929eeb89b90b5b189
BLAKE2b-256 checksum
How to use checksums
921824a98f08e3ec6bd453848638204973a756eec82d6ebbdb0951bb711b6893
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.7.0
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