Directory / plugin
DOI Creator
v1.2.2 · by ghego1
Register DOIs on DataCite or Crossref for posts, pages and custom content, with rich metadata: ORCID, journal, issue, abstract, license.
About this plugin
DOI Creator registers a Digital Object Identifier (DOI) for each content you publish and stores it in the doi custom field of the content, so that your theme can show it. It works with the two registration agencies most used by journals and repositories: DataCite and Crossref. You choose yours in the settings and enter the credentials of your account; the plugin does the rest.
Features
- Automatic registration when a content is published, scheduled contents included. It can be turned off, to register DOIs only on request.
- Any content type: posts, pages and custom post types.
- Your DOI format: prefix plus a suffix pattern with placeholders ({year}, {month}, {issue}, {volume}, {counter}, {post_id}, {random}), with a live preview.
- Rich metadata: resource type (journal article, preprint, report…), authors from Co-Authors Plus (guest authors included) with ORCID iD and affiliation (with ROR ID), journal title, ISSN, volume and issue, publication date, abstract from the excerpt, language (Polylang supported), subjects from tags or categories, Creative Commons license.
- DataCite or Crossref: both agencies are included, with their own settings, test environment and metadata.
- Preview: see the exact request the agency would receive for any content, before registering anything.
- Test mode with the test environment of the agency, and a connection test that checks your credentials.
- Content list: DOI column, filter by DOI status (with DOI, without DOI, failed) and a “Register DOI” bulk action, also for contents published before.
- DOI box in the editor: see the DOI, register it now or update its metadata.
- Reliable: temporary errors (network, agency unavailable) are retried automatically; deposits an agency has not processed yet are checked until it does; every registration, update and error is listed in the activity log.
The DOI
Each DOI is made of the DOI prefix set in the settings (optionally followed by a fixed part of the suffix) and of a suffix built from a pattern. The default pattern, {year}-{issue}-{counter}, gives DOIs such as 10.5438/0012/2021-1-2: the year, the issue number (from the periodicity of the journal) and a progressive number.
The metadata
With the “Enhanced” metadata profile DataCite receives: title, authors (with ORCID iD and affiliation when set in their profile), publisher, publication year and date, resource type, a description with journal, issue and year, and, when enabled, abstract, language, subjects, license and journal (title, ISSN, volume, issue).
The “Classic” profile sends exactly the metadata of version 1.0: generic “Text” type ({ "ris": "RPRT", "bibtex": "article", "citeproc": "article-journal", "schemaOrg": "ScholarlyArticle", "resourceTypeGeneral": "Text" }) and a description with journal, issue and year (e.g. “CoolJournal, 3 (2021)”). Sites configured with a version before 1.1 keep this profile until they change it.
Every DOI is registered with DataCite’s technical “source” field set to doi-creator-wp. It is not part of the DOI metadata (it does not appear in citations or in the metadata XML), but it is public: it lets the author of this plugin count, from DataCite’s public API, how many DOIs are registered with it.
Crossref
Journals and publishers that are Crossref members can register their DOIs on Crossref. Deposits follow the Crossref schema 5.5.0, are validated against it before being sent, and registrations, metadata updates and error messages have been tested against the Crossref test system. Register some DOIs there before switching to production, and please report anything wrong in the support forum. Each content is deposited as a journal article (Crossref schema 5.5.0) with journal title and ISSN, volume and issue, title, authors with ORCID iD and affiliation (with ROR ID), publication date, abstract, language, Creative Commons license and URL.
Crossref needs your user name (e.g. [email protected]/role) and password, the DOI prefix of your membership and the ISSN of the journal. A Crossref deposit creates the DOI or replaces its metadata, so before registering a new DOI the plugin makes sure that nobody is using it yet.
Crossref processes deposits after receiving them, usually within minutes: those DOIs are shown as pending and the plugin keeps checking until Crossref confirms them.
Configuration
Open Settings > DOI creator. The Overview shows what is missing. You need:
- Registration agency: DataCite or Crossref.
- DOI prefix: your prefix, optionally followed by a fixed part of the suffix (e.g. 10.5438 or 10.5438/0012).
- Credentials: the repository ID and password of DataCite Fabrica, or your Crossref user name and password. They are stored in your database and are never shared with anyone other than the agency you chose.
- ISSN of the journal (Crossref requires it).
- Periodicity: how often an issue is published, used for the {issue} number.
Then use “Test connection” to check your credentials.
Testing
Before registering real DOIs, we strongly recommend to check that everything works in test mode: turn on “Use the DataCite test environment” in the Connection section.
DOIs registered in test mode are visible only in the test environment of the agency (DataCite Fabrica Test or the Crossref test system) and never resolve on doi.org. If your test credentials are different from your production credentials, enter them in the test credentials. Crossref enables its test system for your account on request.
Privacy
This plugin only communicates with the registration agency you chose, using your credentials, to check and register DOIs. It does not send any data to the plugin author or to any other service.
- DataCite: api.datacite.org, or api.test.datacite.org in test mode. See the DataCite privacy policy.
- Crossref: doi.crossref.org and api.crossref.org, or test.crossref.org in test mode. Before registering a new DOI on Crossref, and only in production, the plugin asks doi.org whether that DOI already exists. See the Crossref privacy policy.
Supporting the project
If you find this plugin useful and you would like to contribute to its development, please consider donating.
Feature requests and support
If you would like to see new features added to the plugin, send us your requests through the support forum of the plugin on WordPress.org, and please consider donating to increase the time we can spend coding the plugin.
The plugin is provided as-is without any support. If you really need help, please consider donating and making a support request. We’ll do our best to help those who help us.