This plugin hasn’t been updated in over 2 years. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.

JSON Data Shortcode

Description

This shortcode lets you pull data into your pages via JSON. Supports unlimited levels of nesting!
Built-in caching of results keeps your data providers happy, but can be tailored to your needs with a configurable lifetime.

You can use it one of two ways (but not necessarily on the same page – see this article!)

[json src="http://example.com/my_data_src?format=json" key="Data.mykey"]

–> outputs contents of mykey in the Data object

[json src="http://example.com/my_data_src?format=json"]I want my value to appear right here {Data.mysubdata.otherKey} in the middle of my content.[/json]

–> replaces the text in {} with contents of otherKey in the mysubdata object in the Data object

Note: this plugin allows you to bring content from remote sites into your posts. Please exercise caution, especially if you allow posting by untrusted users.

Installation

Download and install using the built in WordPress plugin installer.
Activate in the “Plugins” admin panel using the “Activate” link.

FAQ

URLs are too long! Can I shorten my JSON shortcodes?

Use the name attribute to define a friendly name for your data source! The scope of this name is only the post / page you name it.
Also note that using the name attribute more or less restricts you to the self-closing format, because of shortcode parser limitations.

[json src="http://example.com/my_data_src?format=json" name="ExampleData"]

Later in the same page…

[json name="ExampleData" key="Data.mykey"]

–> outputs contents of mykey in the Data object

How can I control how frequently my data is refreshed?

Use the lifetime parameter! This parameter is in seconds, is per source, and should be set the same for all references to that source on a post / page for best results.

[json src="http://example.com/my_data_src?format=json" lifetime="300"]I want my value to appear right here {myData} in the middle of my content.[/json]

–> Will expire the cached data after 5 minutes.

Does this work with caching?

Yes! Any output caching system will cache your post with JSON data included.
However, your data will only be checked for expiration when your site builds the post, so time your cache expiration accordingly.

Contributors & Developers

“JSON Data Shortcode” is open source software. The following people have contributed to this plugin.

Contributors

Translate “JSON Data Shortcode” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

1.3

  • Added: JSON Shortcode Diagnostic page to test shortcode syntax

1.2

  • Changed: decode HTML entities in src URLs (to ensure support for multiple query parameters) – thanks, bakedbeing

1.1

  • Fixed: fatal error when wp_remote_get returned a WP_Error object
  • Changed: use native json_encode/json_decode when available for better performance

1.0

  • Initial release