Extension:GoogleKnowledgeGraph

From mediawiki.org
Jump to navigation Jump to search
MediaWiki extensions manual
OOjs UI icon advanced-invert.svg
GoogleKnowledgeGraph
Release status: experimental
Google Knowledge Graph extension output example.jpg
Implementation Tag , API
Description The GoogleKnowledgeGraph extension automatically gets short summary from Google Knowledge Graph and adds it to a tooltip.
Author(s) Urfiner
Latest version 0.1.0
MediaWiki 1.35
License MIT License
Download https://github.com/Griboedow/GoogleKnowledgeGraph

Check usage and version matrix.

The GoogleKnowledgeGraph extension automatically gets short summary from Google Knowledge Graph and adds it to a tooltip.

The extension developed to help newcommers understand how to create a simple extension with frontend/backend (parser+api). The code of the extension is well-commented to make it easy to understand.

Production usage of the extension is not recommended.

Usage[edit]

Put something like that on your page:

<GoogleKnowledgeGraph query="Mario">

And save the page. After that hover cursor on the word "Mario" and see:

Google Knowledge Graph extension output example.jpg

Production usage disclamer[edit]

The extension is not recommended for production usage:

  1. Google Knowledge Graph provides only 100 000 requests for free per day.
    1. For small wikis it is more than enough but on big ones the limit will be depleted quite soon.
    2. Howewer, adding long-living cache may significantly improve the situation if for some reason you still want to use it in prod. There is a comment in code how a simple caching can be added.
  2. It is not a big issue for English but Google Knowledge Graph supports search terms in Nominative case only.
    1. In the future we can add something like that (synthax is not supported yet): <GoogleKnowledgeGraph query="Mario">visible text</GoogleKnowledgeGraph>.

Installation and configuration[edit]

The extension tested on MediaWiki 1.35. Probably it will work on 1.29+ (the used hooks are quite old).

To install the extension:

  1. Clone the repository to your extensions/ subfolder: git clone https://github.com/Griboedow/GoogleKnowledgeGraph.git
  2. Load the extension in your LocalSettings.php: wfLoadExtension( 'GoogleKnowledgeGraph' );
  3. Configure API key:
    1. Get Google API token here
    2. In LocalSettings.php set your key: $wgGoogleApiToken = 'your-google-token';
  4. Setup language:$wgGoogleApiLanguage = 'en';

Done!