A simple integration of the AddThis social sharing widget for Django projects.
Maintained by Basil Shubin, and some great contributors.
First install the module, preferably in a virtual environment. It can be installed from PyPI:
pip install django-addthis
You'll need to add addthis
to INSTALLED_APPS
in your project's settings.py
file:
INSTALLED_APPS += [
'addthis',
]
The addthis_widget
template tag requires a site profile id: pub_id
. Either pass it as pub_id
, or set PUB_ID
in your ADDTHIS_SETTINGS
settings dictionary:
ADDTHIS_SETTINGS = {
'PUB_ID': 'xx-xxxxxxxxxxxxxxxx',
...
}
The site profile id can be found by visiting its Profile Options page on AddThis (ID:).
There are a few configuration options for addthis
that can be placed in your ADDTHIS_SETTINGS
settings dictionary:
Option | Default |
---|---|
USERNAME | |
SERVICES_EXCLUDE | |
SERVICES_COMPACT | |
SERVICES_EXPANDED | |
SERVICES_CUSTOM | |
UI_CLICK | False |
UI_DELAY | 0 |
UI_HOVER_DIRECTION | 0 |
UI_LANGUAGE | |
UI_OFFSET_TOP | 0 |
UI_OFFSET_LEFT | 0 |
UI_HEADER_COLOR | |
UI_HEADER_BACKGROUND | |
UI_COBRAND | |
UI_USE_CSS | True |
UI_USE_ADDRESSBOOK | False |
UI_508_COMPLIANT | False |
DATA_TRACK_CLICKBACK | True |
DATA_GA_TRACKER |
Please see the example
application. This application is used to
manually test the functionalities of this package. This also serves as
a good example.
You need Django 1.8 or above to run that. It might run on older versions but that is not tested.
First of all, load the
addthis
in every template where you want to use it:{% load addthis %}
then load the widget:
{% addthis_widget %}
Visit the AddThis Get the Code page and create/generate your social sharing code, e.g:
<!-- Go to www.addthis.com/dashboard to customize your tools --> <div class="addthis_sharing_toolbox"></div>
Be sure to omit the:
<script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=xx-xxxxxxxxxxxxxxxx"></script>
part of the (generated) code as the
addthis_widget
template tag takes care of this.
{% load addthis %}
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>django-addthis Example</title>
</head>
<body>
<!-- Go to www.addthis.com/dashboard to customize your tools -->
<div class="addthis_sharing_toolbox"></div>
<p>Well, the way they make shows is, they make one show. That show's
called a pilot. Then they show that show to the people who make shows,
and on the strength of that one show they decide if they're going to
make more shows. Some pilots get picked and become television programs.
Some don't, become nothing. She starred in one of the ones that became
nothing.</p>
<!-- Placed at the end of the document so the page load faster -->
{% addthis_widget %}
</body>
</html
If you've found a bug, implemented a feature or customized the template and think it is useful then please consider contributing. Patches, pull requests or just suggestions are welcome!
django-addthis was originally started by Raymond Wanyoike who has now unfortunately abandoned the project.
django-addthis
is released under the GNU GPL v3 license.