Displaying Google Spreadsheets in WordPress

As I continue working on my School Sports project I am discovering some pretty cool stuff when it comes to displaying content on Google Docs as part of a WordPress based site.  I am particularly interested in this because lots of people make lists in Excel and making lists in Google Docs is basically the same process just done via a Web Browser instead of Excel.

Our Middle School has 10 sports (6 girls, 4 boys) teams.  Each has a different coach and along with one or more parents who help coordinate things like concessions, team banquets, weather updates, time changes, etc.  If you’ve been involved with youth or school sports, you know how much things change and information needs to be communicated to parents and participants.

I cannot envision training 12-20 people to manage content on a web site and have any prayer of the content keeping any sort of consistent look and feel.  I need a solution that is low touch (for me) but simple enough that anyone who can create a spreadsheet can keep a fair amount of content up to date.

Which brings me to Google Docs.  It turns out Google makes it pretty easy to publish content from Google Docs (documents, spreadsheets, presentations, etc.) in a form that can be embedded on another web site.  This will allow me to have content owners have to do nothing more than keep a couple spreadsheets up to date in order to keep the web site updated.  While this works pretty well, the downside of this solution is the control over the look and feel of what Google will allow you to embed is pretty limited.

There are a couple of Google Docs plugins but it looks like Google Inline Spreadsheet Viewer will do exactly what I want.  This plugin allows you to add Google Docs spreadsheets to your pages and posts using a shortcode.  The resulting output has a plethora of CSS classes which means styling the spreadsheet content (which is displayed as a table) to be consistent with your theme is pretty straight forward.

The only issue I’ve encountered so far is empty cells on the spreadsheet don’t seem to be output at all, not even as an empty table cell.  I think this only happens when the empty spreadsheet cells are at the end of a row of data.  If there are populated cells later  in the row it seems to work fine.  This was a minor issue for me, one I fixed by simply populating the spreadsheet with a reasonable value.

My Thematic project is progressing

The more I play with Thematic, the more I like it.  I have been working on a Thematic child theme for a few weeks now.  I have the basic functionality up and running (see GoLufkin.com).  I still need to do some tweaking to clean up a few things (e.g. I want the post date formatted like a small calendar box) but for the most part, I am pretty happy with what I have.

I’ve been playing with CSS3 drop shadow and gradient features – they work fine with Chrome and Firefox.  I have not tested with Safari but the BODY tag gradient doesn’t seem to work on IE.  I am speculating that i have an error somewhere but haven’t chased it down yet as I find it hard to believe IE would implement gradient support for some tags but not others.

I am planning on reusing the custom header code I developed for my Sandbox-LEGO theme as the Dashboard part of it should work with minimal changes leaving me with just some work to do on the header.php file.  The code I did for the Sandbox-LEGO theme allows a user to choose a left, center, and/or right header image from their existing media library and add some CSS overrides to tweak placement.

The integration with Google Calendar is working pretty well, I think it is the right call for this sort of site.  It will be easy for people to add events to the appropriate Google Calendar and have them reflected on the site.  I may look into some jQuery to dink with the GCal style as I still would like the calendar to better integrate with the theme.

The theme color scheme (skin) is currently hard coded for the GoLufkin site but ultimately choosing a color scheme will be possible through the theme options panel.

Moving forward with Thematic

I haven’t had much time to work on any of my theme projects but in the last week or so I’ve been trying spend some free cycles on something I am called “Middle School – High School Boosters Club” theme.

My wife is the president of our Middle School Boosters Club this year and much like the swim team was years ago when I got involved, the Boosters Club has no web presence and just about everything is done on paper.  Bleh.  She has asked me to build a web site for the Boosters Club so I am  using it as an opportunity to choose a new theme framework (I’ve settled on Thematic) and see how much stuff I can leverage from Google Apps to build them a solution that doesn’t require me to babysit it all the time. We’ll see how that goes!

As I noted in a prior post, the Wicked WordPress Themes book has been a good resource to get me going with Thematic.  I also found a Thematic Child Theme called Byty which caught my eye and I decided I wanted something similar.  The downside of Byty is a lot of the nice gradient effects have been achieved with images as opposed to CSS.  That is understandable as gradients were not available until CSS3.  However, I want whatever I build to be fairly modern so I’ve decided to go down the CSS3 route.

I am specifically not building a theme for our school but instead and building one which can be tailored for any school by selecting a color scheme.  We’ll see how well I accomplish that!  These are some of the requirements that I am working against which I suspect would be similar for any other school boosters club that may want a web site.

  1. Online Store with PayPal/Credit Card Payments
  2. Support for Twitter and Facebook Fan Pages
  3. Color schemes
  4. Custom Logo(s)
  5. Calendar(s) for game and practice schedules
  6. Sport specific pages featuring just the posts relevant to that sport

Since Google Calendar is dead simple to use and with so many people using Gmail already, it seemed like the logical choice to base the calendar solution on.  Google Apps is free for organizations like a boosters club to  use to registering our domain with Google Apps was the first thing I did.  This also makes it easy to create e-mail accounts for the various people associated with the club (president, secretary, etc.) so they can perform their task without polluting their personal email.

Once Google Apps was configured, I created a Calendar for each of the sports we will support (Football, Volleyball, Boys and Girls Soccer, Softball, Boys and Girls Basketball, etc.).  These calendars can be viewed separately or combined making it easy to view the whole calendar or just the calendar for a specific sport.  Even better, WordPress supports Google Calendar vias oEmbed turning a Google Calendar URL into a Gcal short code!  About the only downside I have found so far is it is very hard to style the Google Calendar, I’d really like the light blue Google uses to be a different color to match the rest of the site but I will live with it based on how easy managing the calendar will be!

I’ve decided to use Simple Twitter Connect and Simple Facebook Connect, both from Otto, for Twitter and Facebook integration.  I’ve used them before so they were familiar to me.  Based on the recommendation from the Wicked WordPress  Themes, I also tried AddThis but it is a  bit more invasive than I want so I went back to SFC and STC.

For an online shop, I am going with eShop which is a very simple shopping cart plugin.  Since we’re selling just a few items (e.g. t-shirts, sweatshirts, etc.), we don’t need anything complex and eShop looks like it will do what we need.

The site isn’t online yet so there isn’t anything to see but hopefully I will have a demo up and running fairly soon.  I need to do some more CSS work and get the custom page loops I want.  I am impressed with how easy Thematic has been to work with.