ViewクラスにOGP (The Open Graph protocol)を適応させるライブラリです。
本ライブラリのViewMixinを継承させることで、ogp metaタグの実装が簡略化できます。
画面ごとにカスタマイズすることもできます。
SEO (Search Engine Optimization)対策に最適です。
- ライブラリをインストールする。
pip install django-ogp-view or pip install git+https://github.com/taogya/DjangoOgpView.git
settings.py
に以下を追加する。INSTALLED_APPS = [ : 'django_ogp' ] OGP_SITE_PROPERTY_MODEL = 'django_ogp.OgpSiteProperty' OGP_LOCALE_MASTER_MODEL = 'django_ogp.OgpLocaleMaster' OGP_MIMETYPE_MASTER_MODEL = 'django_ogp.OgpMimeTypeMaster'
- migrateを行う。
python manage.py makemigrations python manage.py migrate
- OGP用のプロパティを設定する。
- OgpSiteProperty
サイト内共通のプロパティ。 - OgpBasicProperty
ページごとのプロパティ。 - OgpCustomProperty
カスタムプロパティ。
JSONで指定する。
JSONについて, keyはpropertyの名称, valueはcontentの値で指定する。
- OgpSiteProperty
- ViewにOgpViewMixinを継承し, 割り当てるプロパティのレコードを割り当てる。
from django.views import View from django_ogp.view import OgpViewMixin from django_ogp.models import OgpBasicProperty class YourView(View, OgpViewMixin): ogp = OgpBasicProperty.objects.first() :
- 以下のようにhtmlファイルにdjango_ogp用のタグを追加する。
{% load django_ogp %} <!DOCTYPE html> <html lang="en" prefix="{{ view.ogp_global_prefix }}"> <head prefix="{{ view.ogp_prefix }}"> {% add_ogp_meta %} :
- マイグレーションファイル にはマスターデータ自動生成スクリプトが含まれています。
不要なデータがありましたら, 管理者画面にて削除するかマイグレーションファイルを修正してください。 - 以下のモデルは
swappable
なモデルです。- OgpSiteProperty
- OgpLocaleMaster
- OgpMimeTypeMaster