Some thoughts on extending the LTI Plugin for WordPress

Reading Time: 3 minutes

I’m making some sort of half-baked effort to clear some posts out of my drafts folder. I’m resigned to the understanding that many will never see the light of day – their time has now passed – but this one is still relevant, and something I hope we can make some headway with before the end of 2019.

After a trip to Thompson Rivers University in June I’ve been thinking a bit more about the behaviour of the LTI plugin that we built for linking WordPress Multisite to your VLE (or LMS, if you prefer). The plugin achieved it’s initial aim, which was to reduce the barrier to getting started with WordPress by simplifying the setup admin required of academic colleagues. We’ve been using it with positive feedback and we hear that CampusPress installed it recently for colleagues at UCL as well. Good times.

However, since the OpenETC day at TRU, I’ve been thinking more and more that we have a pretty solid foundation on which we could build out some additional functionality and features that could  help teachers manage student use of WordPress blogs.

One of the things that our plugin does is display a neat list of all blogs associated with a course in the VLE. Because each blog is created programmatically when a student clicks on the link in the VLE, we can control the url for the site in WordPress. We inject the course code from the VLE course into it (along with a few other bits and pieces), which then makes it very easy to find all the blogs that belong to that course.

Here’s a crap GIF that shows a tutor accessing WordPress from Blackboard Learn, and seeing a (not very long) list of student blogs as an example.

This means that the teacher doesn’t have to hunt around in WordPress for each student blog, or rely on things like students using special naming conventions for their blogs to ensure they are grouped together in WordPress My Sites (for example). Clicking on a link in the list to access a student blog also adds the teacher to the blog with Author permissions. So students don’t need to remember to add the teacher for the blog to be findable or accessible either.

What’s happening on the blogs?

Tom Woodward demoed a lot of cool stuff during his sessions and he got me thinking again about this list of blogs page in the plugin, and the potential to build it out further to make it easier to see what’s going on across a collection of student blogs. A very quick chat with colleagues at Edinburgh suggests there’s merit and interest in being able to easily identify where there’s activity within a student blog without having to check them all.

I think we could quite easily extend the current list of blogs to flag activities since a given date to make it simple and easy to identify which blogs have something to look at (or even just provide reassurance that something is happening). I think it would also be kind of nice to include an overall timeline of activities across all blogs since the start to give some overall insight into the rhythm and pattern of student work too. Whether this could be on the same page or night might depend on how processing intensive it is as the page mustn’t be slow to load.

Here’s a crap mockup of what’s in my head.

Other things I’d like to try shoehorn in here are based on a couple of working examples that Tom demoed.

(1) Include some sort of per-blog link to an overview page which helps see at a glance some useful stats about posts. Inspiration from:

(2) Include some sort of per-blog link to a timeline.js overview of blog posts. It would be a really nice way to browse the blog, particularly if you were reviewing a semester of activity for marking / feedback purposes. Potentially rather than just be accessible from the LTI plugin overview page and hence only available to teachers, it could be neat to wrap it up in a plugin or something so that students could view it too for their own blogs. I can see the benefit in having it as a reflective tool there as well. Inspiration from:

More control over selecting templates when linking from the VLE

There was some great feedback from Kwantlen Polytechnic University about their use of the OpenETC WordPress service, and it was clear that being able to have some more control over the set up of student sites (enforce naming conventions, group all sites related to a class etc) as per above would be useful to them. Quite a bit of what the academic colleague speaking wanted is already baked into the LTI plugin, but some additional work to allow her specific ePortfolio template to be selected would also be required. I’ve already written about extending the plugin to provide more control over template selection, so this is more evidence that there are use cases out there for this.

6 thoughts on “Some thoughts on extending the LTI Plugin for WordPress

  1. Are these LTI features or general good things?

    Pondering if the WP api gives you everything you want these days?

    And turn off jetpack

    1. These are general good things and the WordPress API would give us what we need to build them for sure. I think most of Tom’s examples were doing some simple API calls to get a JSON of blog content and then doing the fancy stuff at the front end.

      Will take a look at Jetpack and what I can do to slim it down. Using it for the subscription features which are handy…

        1. The problem with that is that I’d need to maintain a plug-in for Moodle, a building block for Learn and anyone else would need to do whatever it is one does for Canvas, D2L etc. LTI is also pretty much all that’s supported on Coursera, EdX, FutureLearn etc.

          Using LTI to do the linking means one WP plugin to maintain only and any VLE / LMS can connect with just a little UI config on that side.

  2. Nope – we’re not augmenting LTI itself. That bit of the plugin remains as-is.
    All of this stuff is what happens *after* connecting to WP from the VLE, so we’d be extending the plugin to add in these additional features. Everything described above would be done by adding new views of WP data to the WP plugin, or some additional logic on the WP side of things to deal with custom parameters coming through standard LTI.

Leave a Reply

Your email address will not be published. Required fields are marked *