This post is a continuation of part 1, and it will aim to take a closer look at some of the details driving the syndication and general re-publishing logic that is happening on the Virtual Language Studies site. As I noted in the previous post, we are using the plugins FeedWordPress and Sitewide Tag Pages Plugin to create the syndication oriented architecture. It is rather simple, but it could use a bit more development to make it even more seamless, and I’ll talk about this later on and make some recommendations for future development at the end of this post.
How does the syndication work?
First and foremost, we had to come up with an agreed upon set of tags for the various courses, featured, content, and particular topic we want students and faculty to tag their work. You can see our agreed upon tags in the tag glossary here. What happens after that is we actually can aggregate all content from the individual student blogs into a uber course blog titled “Chinese Notebooks” that actually can filter course posts based on the tags being aggregated. For example, all the Chinese 002 posts can be filtered from the rest etc. So, for example, here is a look at the FeedWordPress interface in which the various tags for the Chinese course are being fed into the Chinese Notebooks blog:
These various feeds are all pulling off the main tags blog which is created by the Sitewide Tag Pages Plugin. You can see that blog here. What is happening in this blog is every post from around the environment is being aggregated to one “central” blog that then allows us to grab the tagged feed for each individual course and aggregate it into the Chinese Notebooks site, for example. Here is an example of a specific tag from the tags blog that is syndicating into the Chinese Notebooks site: http://virtuallanguagestudies.net/tags/tag/chinese-002/. And here is the feed for that tag http://virtuallanguagestudies.net/tags/tag/chinese-002/feed/. And you can see those same posts on the Chinese Notebooks blog here: http://virtuallanguagestudies.net/chinesenotebooks/category/chinese-002/. You’ll notice that on the Chinese Notebooks site that the tag “Chinese 002″ tag has been converted to a category, this is intentional and very important. Why do we do this? Well, because if we pull it in as a tag it will through this blog into an eternal loop, and it will constantly be finding new posts tagged “Chinese 002″ resulting in thousands and thousands of posts, so what needs to be done (and this happens by default in FeedWordPress) is that tags must be converted to categories in the syndication settings. You can find those settings under Syndication–>Category & Tag Settings. What’s more, you can specify a specific tag or category you want all posts syndication from a particular feed to be associated with.
So, on the Chinese Notebooks we have all the different course posts separated by categories which allows you to quickly filter what is happening in each class within on site. What’s more the permalinks and comments all link back to the original student or faculty posts in their own space. And you control these options under Syndication–>Posts & Links Settings.
Now, this is the same logic we are using to target content on the homepage from various sites. You’ll notice there are Chinese and Russian faculty posts as well as Chinese and Russian students posts.
This is handled with the same logic. Now there is some custom PHP calls in the custom home page template, but they are simply calling in particular categories of posts that we are in turn syndicating in from the various faculty blogs as well as the Russian and Chinese Notebooks sites. here is what the FeedWordPress interface looks like for the main VLS site.
And for each of those feeds we are mapped them on to specific categories that we can then syndicate in the various customized content areas on the homepage to feature as much work from around the community as possible. What’s more, you will notice to tabs on the front page titled Russian Notebooks and Chinese Notebooks that actually link to the versions of the Notebooks sites that are syndicated from those sites (which are actually separate sites) in order to maintain some visual consistency for visitors on the front page (you can see the actual Russian and Chinese Notebook sites here and here).
Finally, what is even more pwoerful about this syndication bus model is that the posts need not originate on the vls,net system, we can syndicate posts from any site that has a working RSS feed, like we are doing with Orland Klem’s Chinese Field Work Posterous blog. The possibilities in this regard are powerful, and VLS has only just begun to imagine them.
Future development to streamline the Syndication Bus
This process needs to be streamlined a bit further to keep inline with the reason i choose to work with WordPress in the first place, namely that anyone can and should manage this space, it should not take a programmer or a “specialized” admin—that is where Drupal goes off the tracks in my opinion. So, what would be needed to make this syndication bus model that much easier is basically a streamlining of the of the FeedWordPress syndication settings/options as well as the ability for those various feeds to be automatically discoverable within the system. As of now the vast majority of the sites share a stable base URL from which we are pulling the content, so it should be fairly straightforward to create a simple element in the dashboard or where ever wherein professors can simply add the tag of a specific course into a field and have all the posts with that course tag instantly aggregate into this blog. Kind of a mother blog on the fly. All you need to do is enter a tag, all the settings are there and ready to go (just simplify them). FeedWordpress is almost there, but the difference between adding “chinese 002″ an entire feed from the tags blog, like http://virtuallanguagestudies.net/tags/t… trivial, but it is extremely significant. And the ability for this feature to ask, is this a VLS feed or an external feed would be that much cooler. In short, it would be excellent if we put a couple of people on the task of thinking about how to make the syndication bus that much simpler for anyone to use, and use well.
Another freaking no duh moment after I read this. Thanks for writing it! How many different aggregating sites can I create with this idea before things slow up. Am looking at aggregating 11 grade level blogs. But am sure teachers will want to pull student content into a class blog as well or pull in kids tumblr blogs etc.