davidswelt / zot_bib_web

Create interactive web bibliographies based on Zotero collections
163 stars 19 forks source link
academia bibliographies cms website zotero

Interactive web bibliographies with Zotero

Example Installations

Lab website at Penn State <http://acs.ist.psu.edu/wp/pub/>__

Personal website <http://david-reitter.com/pub/>__

Documentation

http://zot-bib-web.readthedocs.io/

Author/Contact:

David Reitter -- david.reitter@gmail.com http://www.david-reitter.com

Features

This tool generates interactive web bibliographies based on one or more collections in a Zotero repository. Collections can be maintained by groups of people, using Zotero's web interface or their desktop applications.

Bibliographies can be ordered by collection, by publication year, or by publication type (e.g., journal articles first), are interactively searchable, can be linked to PDF documents or other URLs, have records for BibTex, EndNote and Wikipedia, and can be exported to HTML or pushed to a Wordpress database.

Zot_bib_web does not depend on any third-party web server. The generated bibliographies load quickly because they are stored as static files along with the rest of your website. This makes a good source for webcrawlers, including Google Scholar and CiteSeer.

Setup is easy for anyone who runs their own website and knows how to use a command line (shell). The easiest way to use it is to call zot.py with the key of a public Zotero collection. It will make a zotero-bib.html file. Copy this, along with the "site" and "files" (if any) directory to your webserver.

Demo

License and Donations

Requirements

Setup

Then view zotero-bib.html in a browser. If that looks good, move on to the next steps for configuration.

Alternatively, you can use give the primary settings in arguments to the program.

Bibliography in Zotero

Here's an example of a bibliography structure::

My Publications [MGID90AT]
10 Selected Works
15 In Preparation / Under Review
20 Refereed Works by Topic
    Semantics
    Parsing
    Dialogue
    Machine Learning
30 Theses
40 Talks (Without Paper)

To see this, use the provided settings.py as an example.

Overview of Configuration options

Deployment to a web site

To generate HTML and include it in a website:

Wordpress Support

This package can push directly to a Wordpress site. A separate program "push.py" is included to do this.

Follow these steps:

  1. Set up zot.py to generate a bibliography you like. Call zot.py --full to generate a complete zotero-bib.html file for debugging purposes. Configure settings.py to not generate the full HTML code.
  2. Install the wpautop-control plugin (or a similar plugin) to make sure that WP will not insert paragraph breaks at various places in the bibliography. With this plugin, you will need to add a "custom field" to the page created in the next step (Choose "Screen Options" at the top of the page view, enable custom fields. Then find custom fields at the very bottom of the page and add a "wpautop" field with value "no".
  3. Create a WP page or a post for the bibliography. Insert [zot_bib_web COLLECTION] where you'd like the bibliography inserted. Replace COLLECTION with the ID of the collection. (More options: see push.py)
  4. Copy the style sheet contents (in site/) to your Wordpress theme (select "editor", or "Additional CSS").
  5. Configure settings.py so that jquery and other files are available on the web server. Typically, this would be jquery_path = "../wp-includes/js/jquery/jquery.js" clipboard.js and clippy.svg: You may refer to a public URL or serve the files yourself.
  6. Configure push.py (at the top). You will need to know a few simple details about your WP installation.
  7. Run push.py regularly or on demand. It will call zot.py automatically and then update the page in WP.