Display current song via “Auto Refresh API Ajax”
See these settings:
URL: https://cast02.siamsa.ie/public/radio_siamsa/api/live/nowplaying/radio_siamsa
JSON-path: now_playing.song.title

Free JCI Plugin: Data from playlist with basenode and without
Solution:
[jsoncontentimporter url=https://cast02.siamsa.ie/public/radio_siamsa/api/live/nowplaying/radio_siamsa basenode=now_playing.song]
{text}<img src={art}>
[/jsoncontentimporter]
or:
[jsoncontentimporter url=https://cast02.siamsa.ie/public/radio_siamsa/api/live/nowplaying/radio_siamsa]
{subloop:now_playing:-1}
{subloop:now_playing.song:-1}
{now_playing.song.text}<img src={now_playing.song.art}>
{/subloop:now_playing.song}
{/subloop:now_playing}
[/jsoncontentimporter]
Books: Current Bestseller
Code for that:
[jsoncontentimporter url=https://api.nytimes.com/svc/books/v3/lists/current/hardcover-fiction.json?api-key=YOUR_NYT_API_BOOK_KEY basenode=results]
{list_name}<br>{subloop-array:books:-1}<img src="{books.book_image}" title="{books.title}" align="left" width="40" hspace="5"> {books.rank}. <a href="{books.amazon_product_url}" target="_blank">{books.title}</a><br>{books.description}<br clear="all"> <hr>{/subloop-array:books}
[/jsoncontentimporter]
In action:
Hardcover Fiction 1. STAR WARS: LIGHT OF THE JEDI
In this installment of the High Republic series, a disaster in hyperspace may cause far greater damage.

A Hollywood recluse’s perspective changes when she invites her neighbors into her mansion after an earthquake.

The lives of twin sisters who run away from a Southern Black community at age 16 diverge as one returns and the other takes on a different racial identity but their fates intertwine.

A recently arrived dog walker in a Southern gated community falls for a mysterious widower.

In a quiet town on the North Carolina coast in 1969, a young woman who survived alone in the marsh becomes a murder suspect.

Ada, who apprentices midwifery under her mother, must decide whether to aid a band of outlaws who want to create a safe haven for outcast women.

A doctor serving in the Navy in Afghanistan goes back to North Carolina where two women change his life.

When an older slave begins preaching on a Southern plantation, the love between two slaves, Isaiah and Samuel, is seen in a different light.

The third book in the Jake Brigance series. A 16-year-old is accused of killing a deputy in Clanton, Miss., in 1990.

A failed bank robber holds a group of strangers hostage at an apartment open house.

In a sequel to “Ready Player One,” Wade Watts discovers a technological advancement and goes on a new quest.

What might have happened during the 11 days in which a rising mystery author went missing in 1926.

Nora Seed finds a library beyond the edge of the universe that contains books with multiple possibilities of the lives one could have lived.

A devastating event forces a mother who questions her child’s behavior and her own sanity to confront the truth.

The only Black person at a tech startup determines to get other young people of color into America’s sales force.
Plot JSON-data
JCI and casino.chompcasino.com
Challenge: Load https://casino.chompcasino.com/content/chomp-casino/json/2.1/manifest_multicurrency.json and display those game-items containing a defined title.
Solution: Create a new JCI-template with the following settings.
URL: https://casino.chompcasino.com/content/chomp-casino/json/2.1/manifest_multicurrency.json
urlparam4twig : t
Twig code in template:
{% set t = 'Mont' %} {% if urlparam.t %} {% set t = urlparam.t %} {% endif %} term: {{t}}<br> {% for g in games if g.title matches '/'~t~'/i' %} title: {{g.title}}<br> {% for i in g.images %} {{i.url}} {% endfor %} <hr> {% endfor %}
Create new page with this Shortcode: [jsoncontentimporterpro id=NUMBER_OF_JCI_TEMPLATE]
In Action:
Try also this: http://api.json-content-importer.com/jci-and-casino-chompcasino-com/?t=romance
title: Montezuma
/content/all/images/montezuma/banner.jpg /content/all/images/montezuma/tile.jpg
JCI and TablePress
The Plugin “TablePress” and the PRO version of the JSON Content Importer can work together in this way:
First: Create a new TablePress-Table with e. g. two columns and two rows. Fill the cells with some dummy text. This gives you a shortcode [table id=NUMBER_OF_TABLEPRESS_TABLE].
Second: Create a new JCI-Plugin Template with e. g. some JSON data. The Twig-Code is
name: {{_context.0.name}} [table “NUMBER_OF_TABLEPRESS_TABLE” not found /]
Third: Create a new WordPress-Page/Post with
[jsoncontentimporterpro id=NUMBER_OF_JCI_TEMPLATE]
Preview this page: You should see some “name”-Data and a Table.
Then change the content of a Table-Cell and insert {{_context.0.name}} there.
Preview the page again: If you see the Twig-Code in the Tablecell go to the JCI-Plugin-Options, Tab Settings and select “first third-party-Shortcodes, 2nd: JSONContentImporter-Shortcode (use this for TablePress, Contact Form 7 etc.)”.
Preview again and you should see the JSON-data in the Table.
If the number of columns or rows is dynamic: Up to my knowleded TablePress has a fixed number of cols and rows. So this is not that flexible.
Maybe Table Sort is an option then.
JCI and Table Press in Action:
name: Love Breakfast1a: Love Breakfast | 1b |
---|---|
2a | 2b |
API waterservices.usgs.gov and “Auto Refresh API Ajax”
Challenge: Display the data from https://waterservices.usgs.gov/nwis/iv/?format=json&sites=01407600¶meterCd=72279&siteStatus=active
Simply displaying data is easy – create a Plugin template with the above URL and this Twigcode (Shortcode: [jsoncontentimporterpro id=NO_OF_TEMPLATE])
Location: {{value.timeSeries.0.sourceInfo.siteName}}<br>
Date: {{value.timeSeries.0.values.0.value.0.dateTime | date("Y-m-d", "America/New_York") }} <br>
Time: {{value.timeSeries.0.values.0.value.0.dateTime | date("H:i", "America/New_York") }}<br>
Water Level: {{value.timeSeries.0.values.0.value.0.value}}
In Action:
Location: Shrewsbury River at Sea Bright NJDate: 2021-01-15
Time: 21:30
Water Level: 2.11
Display this data with the “Auto Refresh API Ajax” Plugin- Way 1:
- Install the Plugin
- Create a HTML-Div like
<div id="araatest">load data</div>
- Go to the “Auto Refresh AA” menu and insert this:
- URL: See above
- What: value.timeSeries.0.values.0.value.0.value
- Where:
div[id="araatest"]
Display this data with the “Auto Refresh API Ajax” Plugin- Way 2:
Create a new JSON-Feed by adding a new plugin-template:
URL: https://waterservices.usgs.gov/nwis/iv/?format=json&sites=01407600¶meterCd=72279&siteStatus=active
{"data": "Location: {{value.timeSeries.0.sourceInfo.siteName}}, Date: {{value.timeSeries.0.values.0.value.0.dateTime | date("Y-m-d", "America/New_York") }}, Time: {{value.timeSeries.0.values.0.value.0.dateTime | date("H:i", "America/New_York") }},Water Level: {{value.timeSeries.0.values.0.value.0.value}}"}
Put [jsoncontentimporterpro id=NO_OF_TEMPLATE] on a new page. This page should be something like this:
http://api.json-content-importer.com/json-waterservices-usgs-gov/
Adding “?show=oc” removes the template and gives pure JSON:
http://api.json-content-importer.com/json-waterservices-usgs-gov/?show=oc http://api.json-content-importer.com/json-waterservices-usgs-gov/?show=oc
This JSON we use in “Auto Refresh API Ajax”
- Install the Plugin
- Create a HTML-Div like
<div id="araatest">load data</div>
- Go to the “Auto Refresh AA” menu and insert this:
- URL: http://api.json-content-importer.com/json-waterservices-usgs-gov/?show=oc
- What: data
- Where:
div[id="araatest"]
API cryptopanic.com with PRO plugin
Challenge:
How to get access to the data in
https://cryptopanic.com/api/v1/portfolio/?auth_token=… (auth_token needed for real access).
Solution:
For that create a new Plugin-Template with these data
URL: see above
Twig-Template:
portfolio.totals.BTC: {{portfolio.totals.BTC}}<br>
{% for e in portfolio.entries %}
id: {{e.id}}, currency: {{e.currency.title}}, amount_usd: {{e.amount_usd}}<br>
{% endfor %}
Shortcode: [jsoncontentimporterpro id=NO_OF_TEMPLATE]
Live in action:
portfolio.totals.BTC: 1.01098756id: 99547, currency: Bitcoin, amount_usd: 3517.23513915
id: 99550, currency: Ren, amount_usd: 107.086342464
id: 99548, currency: BitShares, amount_usd: 105.932669292
id: 99549, currency: Gifto, amount_usd: 101.704387806
id: 99591, currency: Request, amount_usd: 75.675883161
Shownotes: Generate Custom Post Types for meetup.com API
Here you find the Code for Copypasting to the Video created to show how the JCI-plugin can generate Custom Post Types out of JSON.
Shownotes
1. Link to JSON:
http://api.json-content-importer.com/extra/json/meetup/1.json
2. Plugin-Settings for Custom Post Tpyes:
type=meetup1;ptredirect=meetup2;ptname=meetups;key=REPLACE_BY_RANDOM_NUMBERS_AND_CHARS
3. Overview-Page: twig-cod
<ul>
{% for m in _parent %}
<li><b>{{m.name}}</b><br>
{{(m.time/1000) | dateformat('%A %m/%d/%y %H:%M:%S ', 'Europe/Berlin', 'en_EN') }}<br>
{{m.venue.address_1}}, {{m.venue.city}}<br>
<a href="/meetup2/id{{m.id}}/">more</a>
</li>
{% endfor %}
</ul>
4. Custom Post Types: twig-code
{{description}}
<hr><b>Location:</b>:<br>
<a href="https://www.google.com/maps?q={{venue.lat}}+{{venue.lon}}" target="_blank">{{venue.address_1}}, {{venue.city}}</a>
Anmerkung: {{how_to_find_us}}
<hr>
<a href="{{link}}" target="_blank">more on meetup.com</a>
<hr>
<a href="/list-of-meetups/">overview on current meetups</a>
<hr>
5. Shortcode for generating page:
[jsoncontentimporterpro url=http://api.json-content-importer.com/extra/json/meetup/1.json id=NUMBER_OF_TEMPLATE_POINT_3 DEAKdebugmode=10 mode=create createoptions='{"type":"meetup1", "loop":"", "title":"{{name}}", "slugname": "id{{id}}", "deleteold":"yes","customfields": #BRO# {"field1":"value1"}, {"field2{{id}}":"date{{#SQM#now#SQM#|date(#SQM#mdY#SQM#)}}"}#BRC#}']
6. WordPress.org Plugin Repository: Cron-Plugins
https://wordpress.org/plugins/search/cron/