SheetDB – get your Google Spreadsheet data

Plugin Banner

SheetDB – get your Google Spreadsheet data

by sheetdb

Download
Description

The SheetDB wordpress plugin allows you to easily add content from Google Spreadsheet to your wordpress site. To add content, simply add shortcode that looks like this – [sheetdb url="https://sheetdb.io/api/v1/YOUR_API_ID"][/sheetdb]. Content from within will be rendered as many times as there are rows in the spreadsheet (excluding the first row, which are column names – definition). Each time a new row is rendered, you can refer to any value using the braces notation: {{column_name}}

Example spreadsheet: Example spreadsheet document

Example code:
[sheetdb url="https://sheetdb.io/api/v1/58f61be4dda40" element="ul" limit=3 search="id=*" sort-by="id" sort-order="desc" lazy-loading="true"]
{{id}} – {{name}}
[/sheetdb]

You can use following optional attributes:
* limit – The number of rows that should be returned
* offset – Row from which it should start (how many rows to skip)
* sheet – If you want to use a different sheet than the first one (default), enter the name of the tab you want to use here.
* search – You can search for specific data in your sheet. If you want to use more than one condition join them using & symbol. Example: search="name=Tom&age=15"
* sort-by – The column you want to sort by
* sort-order – sort in asc or desc order
* lazy-loading – If you set this attribute to true, the api call will be executed only when the user reaches the point of the table. If your table is lower on the page this can help reduce request consumption.

HTML rendering and safety:
* Using {{name}} renders plain text only. Any HTML is escaped and will not be executed or rendered.
* Using {{html:name}} allows most safe HTML tags to render (e.g. a, p, ul, li, strong, em, img with safe attributes). Potentially dangerous tags and attributes (e.g. <script>, <iframe>, <object>, <embed>, inline on* event handlers, and javascript: URLs) are stripped/sanitized.

This behavior is intentional for security reasons to prevent XSS and code injection from spreadsheet content.

Security recommendation:
* For best security, configure your SheetDB API as read-only: enable only GET and disable POST, PATCH, and DELETE. This prevents anyone from modifying your data via exposed API keys or URLs.

Additional information:
This plugin use SheetDB.io to fetch data from Google Spreadsheet. You must have an account at SheetDB – account is free for 500 requests per month. More information at SheetDB.io or at privacy policy

Re-use

If you want to re-use your data, you can use the save attribute in your [sheetdb] element. To re-use your data use [sheetdb-slot]. You can use the same data inside as in the parent. To match them the value of save and slot must be the same.

Example:

[sheetdb url="https://sheetdb.io/api/v1/58f61be4dda40" save="slot-name"]

{{id}} – {{name}}

[/sheetdb]

[sheetdb-slot slot="slot-name"]

{{name}}

[/sheetdb-slot]

That way, you only use 1 request instead of 2. Slots have access to the same data as the parent. You can’t change things like limit or search.

Add SheetDB plugin to your site, activate it, then all you need to do is use the [sheetdb] shortcode wherever you want.

  1. Use SheetDB shortcode

    Use SheetDB shortcode

  2. Content on the site will be download from spreadsheet with every pageload.

    Content on the site will be download from spreadsheet with every pageload.

  3. The Google Spreadsheet content

    The Google Spreadsheet content

Great but needs updating

By ahmad21 on March 10, 2023

Security is essential to customer data and you should know this!! Please update for WordPres 6.1.1 asap!!

it works!!!

By Wong (wsjwong) on May 20, 2021

Thanks for creating this. It works easily with the short code config.

Thank Goodness!

By GMRobbins on February 26, 2021

Where have you been these past months (years) while I searched and searched for such a plugin? This does exactly what I, and a zillion others, have needed, desired, and waited for! It is awesome! Thank you. Thank you. Thank you! Everyone, if you've been seeking a way to display your form data on a WP page, look no more! This will do the trick. Your wait is over. I've only downloaded and installed it today, so I can't quite know all it's features. However, out of the box and with a few simple tweaks, I have accomplished in moments what I've tried to do for months!

the best solution

By boek71 on April 10, 2020

I have been using SheetDB for over a year. The best solution available on the market. I would recommend!

Great for prototyping

By kgolajek on November 13, 2019

Can propagate site with real data really fast.
Back to top