The Making of #CLMOOC: Wordpress and Plug-ins
One of our initiatives at the National Writing Project this past summer was planning, building, and implementing our first-ever MOOC (though instead of Massive Open Online Course, we changed the “C” to mean Collaboration). It was part of the Summer of Making and Connecting, and as intriguing and exciting as this concept may sound to you, I am not here to actually talk about the “what,” but mostly my part in the how. (Not wanting to leave you hanging though, this post by Terry Elliot, one of the facilitators, will give a good idea of some of the theory behind the #clmooc endeavor.)
For the platform of this undertaking, we decided to dust off our WordPress multi-site install for several reasons:
- With limited funding and reduced staff, we wanted to utilize what we already had set up and take advantage of free resources, like WordPress and its many related plugins.
- We knew that many of the facilitators and people working on this project were already familiar with the WordPress platform, so distributed ownership and support would be possible.
We installed the Dark White theme and set to work customizing it to fit our needs…
As is standard in many WordPress themes, the default homepage is a list of all your blog posts. The facilitators requested though, that only posts from a particular category display on the homepage. To accomplish this, I created a simple, custom template, adding this snippet of code to get what I wanted:
<?php query_posts('category_name=facilitators'); ?>
This grabbed all posts from the “facilitators” category. I also wanted to be able to grab excerpts of posts—rather than the full post—when requested, so I added:
<?php global $more; $more = 0; ?>
Part of the collaborative experience was that people could submit their own “makes” via a web form, but we needed somewhere to display them and be able to search them, using a search box and tag cloud specific to this one category. You can read about the form and its function on Karen Fasimpaur’s blog. (Karen was another one of our facilitators who contributed to the making and running of the site.)
To list the posts that had been submitted via our form, I installed the List Category Posts plugin. Since all of the submitted makes were tagged under the “submittedmakes” category, I was able to install this plugin and use the following code to pull the posts (and format them using some HTML/CSS attributes):
[catlist name=submittedmakes title_tag=h3 numberposts=-1]
You can also pull other post attributes—author, date, excerpt, etc.—but we just wanted the titles for easy scanning. You may have noticed one strange variable in there: numberposts=-1. Setting this to -1 allowed for an infinite number to be displayed (though currently, we only have 71, which is still pretty awesome).
To display only tags associated with the category “submittedmakes,” and only on this one page, I installed Simple Tags and Widget Logic (although, now, you could use Widget Visibility via Jetpack). Simple Tags allowed me to grab only the tags from the category “submittedmakes” by adding the widget and inserting (under “Advanced Usage”):
“5″ being the category ID number which can be found by going to “Categories” from your WordPress dashboard and in the URL of the category, the category ID is the number following “tag_ID=”.
To get this widget to only show on this one page, I used Widget Logic which displays an extra field at the bottom of each widget titled, “Widget Logic.” In this box you can specify the page you want the widget on by inserting:
The page ID can be found the same way as the category ID. Simply go to “Pages” from the dashboard and in the page URL look for the number following “post=”.
Other Lessons Learned
In addition to figuring out some of these customizations, here’s a few other things that came up while we were making this thing:
- The multi-site install is great for managing several WordPress sites, and the #clmooc site is just one of many sites we’re currently running. For example, you can activate themes and plugins for all the sites in your network from one place. However, there are limitations (see the next two points).
- Embedding iFrames: If you run your own WordPress site, you are able to easily embed YouTube videos and other useful resources that use iframes. However, in the WordPress multi-site setup, admins of the site don’t have the ability to enter iframes. As a WordPress network admin, I was able to embed iframes, but we had to install extra plugins to enable YouTube and GoogleDoc iframe embeds for our facilitators.
- Plugins are great, but they don’t always work well and they don’t always work with WP multi-site installs. Be sure to vet your plugins before relying on them. For instance, the calendar plugin we chose, Timely, worked really well with great functionality, except it doesn’t support time zones. Yeah, kind of a biggie. We thought upgrading to Pro ($75) might help, but I was unable to upgrade for some unknown issue with their order form and their support is very weak. For instance, I submitted a request to address the order form and I got an email saying I had to be a pro user for support preference, and they couldn’t even read my request for at least two weeks.
Considering we basically built the site in a week, making more adjustments after launch, everything went rather smoothly. Most issues we came up against we solved on our own, and the rest were taken care of with a Google search. The WordPress platform is easy to use/learn and there’s great flexibility and functionality possible with themes and plugins. The broad and knowledgable WordPress support community is also a huge plus. I think we could have benefitted from more time to prepare, but it wasn’t really possible or necessary. We were able to meet all the needs of the MOOC with our setup, and of course the real magic happened from the participants, their contributions and engagement, and our amazing team of facilitators.