For a while now, I’ve wanted to embed an RSS feed of the latest stuff I’ve printed from Thingiverse on MakerBot 131’s page. To kick things off, I asked Zach to implement an RSS feed of the Thing’s I’ve Made page on Thingiverse.
It’s been awhile, but I’ve finally gotten around to creating a Wordpress plugin that I’m calling Thingiverse Embed.
The plugin has two features. First, you can embed a little “wallet-sized” view of a Thing into an individual blog post or page, with the Thing’s title, creator, image, description, and links back to Thingiverse with a simple shortcode:
The plugin also includes a Thingiverse Stream widget, for embedding streams like “Things I’ve Made” as a simple sidebar widget. It just needs to be configured with the title, the type of stream you want to use, the Thingiverse username (for certain streams), and the maximum number of Things to display.
You can see this example on the page for MakerBot 131.
You can download the latest version of the Thingiverse Embed plugin from the Wordpress Plugins directory:
Or you can download thingiverse-embed-0.1 here.
To install it, unzip the archive, copy the
thingiverse-embed directory into your Wordpress install’s plugins directory (usually
/wp-content/plugins), and activate the plugin.
You’ll probably want to check out the
thingiverse-embed/readme.txt for more information about how to use the plugin.
It’s been fun a fun weekend developing this plugin, as it’s my first Wordpress plugin, and the first “serious” PHP I’ve written. Of course, it is filled with nasty HTML parsing and XPath tricks, and could use lots of cleanup, so please give me feedback if you use it!
This is so freaking awesome!
I just tried it on my 3.0.1 site and got the error (some obscured for security):
Fatal error: Call to a member function cloneNode() on a non-object in /.../wp-content/plugins/thingiverse-embed/lib/thingiverse_thing.php on line 173
Not at all sure what it means as I havent learned php yet.
There's not a lot of "error checking" going on in the current version of the plugin. I'll drop you an email and see if we can figure it out (and I'll stop being lame and start catching errors).