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-addthisYou'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
addthisin 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_widgettemplate 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>
</htmlIf 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.