This plugin hasn’t been tested with the latest 3 major releases of WordPress. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.

Dan's GSheets Data Embedder

Description

Dan’s Google Sheets Data Embedder was created out of a need for non-technical users to move complex calculations outside WordPress and into a more familiar spreadsheet environment, as well as the ability to share just the pieces of information needed from a spreadsheet rather than sharing the entire document.

Dan’s GSheets allows you to embed the values for either an individual cell, or for ranges directly via shortcode. No need to import data or manage it directly in WordPress. All you need is a public Google Sheets Document (or multiple!) and a free, easy to get API key.

Suggested Uses

  • Offload all of your complex calculations to Google Sheets! Take data from Google forms, or wherever else you wish, and just display the results

  • Have a non-techinical client or user that needs to be able to update a specific message? Just map that spot to a Google Sheets Cell via shortcode, and share that document with them with edit abilities

  • Create a nice front end in WordPress, and update live scores via Google Sheets as a spreadsheet

  • Did you come up with something else? We’d love to hear about it! Share in your review or via a message on my site.

Features

  • Displays public Google Sheet Document data in an easy-to-format view

  • Live updates on page load. Just change your data in your sheet, and it’s live on site!

  • Displays cells or ranges of cells from any public Google Sheet

  • Individual cells are displayed as spans

  • Spans of cells displayed as tables, with optional headers

  • Can target any tab within a Google Sheets document

  • Able to use shortcode multiple times per post / page

  • All options are configured via shortcode

  • Ability to store and use unlimited Google Sheet Documents

Shortcodes:

  • Basic: [dansheet] (defaults to first document, default tab name)

  • Single Cell: [dansheet file=1 sheetname="Sheet1" cell=A1 class="gsheets-special"]

  • Range of Cells: [dansheet file=1 sheetname=Sheet1 cell=A1:C2 theaders="Col 1,Col 2,Col 3" class="gsheets-special2"]

Optional Attributes

  • file=# (number of the Google Doc you have set in the settings page)

  • sheetname= name of sheet in doc

  • cell (mandatory)= Cell Number or range, with :

  • class=custom class name or names here

  • theaders = Comma seperated list of column headers, in order, for range view (optional)

For help creating an API key to use with this plugin, either check out the settings page in plugin, or the FAQ tab here.

To see other plugins like this, or tips on how these are built, check out my blog.

Dependencies and Liscencing

Depends on Google Sheets JSON API v4

Screenshots

  • Settings Page

  • Single Cell and Range Examples with Shortcodes

  • Public Sheet the 2nd screenshot is drawing from

Installation

  1. Upload the plugin files to the /wp-content/plugins/dans-gsheets directory, or install the plugin through the WordPress plugins screen directly.
  2. Activate the plugin through the ‘Plugins’ screen in WordPress
  3. Head over to the Dan’s GSheets settings page, found on the Dashboard sidebar on the Tools sub-menu.

FAQ

How do I create my API key?

To create API key, visit Google Developers Console. https://console.developers.google.com/
Then, follow bellow;

  • Create new project (or use project you created before).

  • Check “APIs & auth” -> “Credentials” on side menu.

  • Hit “Create new Key” button on “Public API access” section.

  • Choose “Browser key” and keep blank on referer limitation.

  • Set this key on the plugin’s setting page.

How do I find the ID for the folder I want to share?

Once you have set the folder as public, you can find the id with the following:

  • Visit https://sheets.google.com/, while logged in to your account.

  • Enter the sheets document that you have shared publically

  • Find the folder ID from the url, after the /folders/. Example: https://docs.google.com/spreadsheets/d/xxxxxxxxxxxxxxxxxxx/edit , where xxxxxxxxxxxxxxx is the key.

My values aren’t updating when I change them in Google Sheets?
  • You may have caching enabled. Either exclude the site from your caching plugin, or you will have to manually flush your caching plugin after you make a change to your Google Sheet.

Reviews

January 21, 2021
This is such a handy tool if you're wanting to do complex calculations in google sheets and display single cell values on the frontend of your WordPress site. Also I figured I'd post this here because I just was dealing with this issue for a couple of days and finally figured out how to fix it. If you are getting a critical error on your WP site (and the error log shows the message below), here is the solution: ERROR: [21-Jan-2021 20:48:02 UTC] PHP Fatal error: Uncaught Error: Cannot use object of type WP_Error as array in /home/****/public_html/wp-content/plugins/dans-gsheets/dans-gsheets.php:156 OR "There has been a critical error on this website." The reason it's probably happening is because your Gsheet takes time to load in data (or do calculations) and that loading time causes Wordpress to timeout and throws an error. One simple solution is to create a new google sheet file and use =IMPORTRANGE("<sheet URL or key>", "Sheet1!A1") to get values from your larger sheet. Then you can use Dan's tool to grab data from the new sheet because the new sheet is not constantly taking forever to load and it'll stop throwing errors to WordPress. Hopefully that helps someone because that took me forever to figure out!
June 30, 2020
Sorry for the adolescent title! I am very impressed with how easy this has made giving my client the ability to update their restaurant menu!!! This is very cool!
April 22, 2020
This is an awesome plugin! I have been trying all sorts of solutions to show ONE dynamic calculated cell from Google sheets on a clients website. I stumbled upon this plugin and it was so easy and quick to set up. THANK YOU! I have saved this as a favorite.
October 2, 2019
This was exactly what I needed. After I fixed a dumb mistake on my part, this plug-in worked flawlessly.
February 1, 2018
After spending days trying to figure out a solution to a client's requested addition to his website, I found this program and it works flawlessly. I've setup another plugin to send contact form data to a Google Sheet, perform a calculation, and then this plugin sends the data back to the website for display. With a little CSS the data from the shortcode can quickly be displayed however desired. Like the author suggested, there are many uses. Love it. The only difficulty I had was in initial setup. To make this pull the data in from the Google sheet, I had to set the Sheet's share setting so that anybody with the link can view. Also the API instructions are a bit dated, but simply select the Google Sheets API in the library and in credentials create the API. Thanks for this fantastic plugin.
Read all 5 reviews

Contributors & Developers

“Dan's GSheets Data Embedder” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

1.1

  • Updated supported version to 4.7.0 after testing

1.0

  • Initial Plugin Release