The MIT KB API Drupal module allows content from the MIT Knowledge Base to be seamlessly embedded in a Drupal site.
The result respects your site's CSS, so content from the MIT KB will have the same look and feel as the rest of your site.
You can see the module on a sample Drupal site at:
Written by Jessica Reed, MIT Information Systems & Technology
Copyright (c) 2014 Massachusetts Institute of Technology
The module is licensed under the GNU General Public License, Version 2 (GPL2).
- The module installs an input filter which dynamically replaces the shortcode [mit-kb articleID]
with the contents of an MIT Knowledge Base article in a public space. The contents are
formatted with standard tags (<h1>, <strong>, <table>, etc.), and will respect your Drupal
- It will also replace the shortcode [mit-kb-excerpt articleID] with an excerpt from the
article, as bounded by the tag in the article's markup.
- This module leverages the MIT KB API. Documentation is available at: The Knowledge Base API
- Note that as of this writing (August 2014) access to the KB API is still in testing, and API keys are not yet being issued to the general MIT community.
- For beta testers, KB API will be limited to servers with MIT IP addresses.
The source code may be found on Github, located in the contrib directory.
- Install this module through Administration > Modules
(see also: https://www.drupal.org/documentation/install/modules-themes)
- Enable the module Administration > Modules
- Enable the filter "MIT-KB" in each text format you want to use, via Configuration > Text Formats
- This will work out-of-the-box on pages with the text formats "Full HTML" and "PHP Code"
- If you want to use it in a page with the "Filtered HTML" text format, you must add the
following tags to the allowed HTML tags for that format:
- (To add tags, go to Configuration > Text Formats > Filtered HTML > configure >
Filter Settings > Limit Allowed HTML Tags, then add the desired tags to the
"Allowed HTML Tags" field. Then save your configuration.)
- You can omit any tags you don't want rendered on your site, but they will be treated
as body text. (ex: the table-related tags are needed for tables and warning boxes)
- To display the full contents of an article on your page, enter shortcode:
- To display an excerpt from an article on your page, enter shortcode:
Where "articleID" is the numerical ID of the KB article you want to display.
- Enable access to articles in private spaces by adding an API token to the CURL request
(See API documentation for details: http://kb.mit.edu/confluence/x/cVAYCQ)
- Add a filter tip and hook help, to give the user contextual help with the filter and module
from within Drupal
- Add a prepare callback, to make sure that other filters don't strip the shortcode
before it can be implemented. (This proof of concept only runs at the process stage)
- Allow the user to submit the short URL of the article, rather than the articleID
- Check for missing excerpts in valid KB articles. Right now, the API returns a 404 error
if either the articleID is bad, or if you request an excerpt, but there is no excerpt defined
in the article.