One of the most popular features included with Orchard CMS is the blogging engine. I personally love to blog in order to share my knowledge and experiences with my fellow .NET Developers whenever possible. During the past week while on vacation I received a request from one of my closest clients that they needed a Related Blog Posts Custom Orchard Module. This is a custom module I have wanted to create for myself for quite a long time, so I came out of holiday hiding for a couple days to create a quick custom module for Orchard that allows a blogger to assign related blog posts to a blog post in Orchard CMS.
Related Blog Posts Custom Orchard Module
Shown below is an image of the Related Blog Posts Custom Orchard Module ( Content Part ) that allows a blogger to associate specific Orchard Blog Posts with a blog post. I can think of others ways to pull off this functionality, but my client was very specific about the Content Part. They wanted to specifically choose published blog posts that relate to the new blog post in Orchard. A list of possible published blog posts associated with the Blog Container is listed in the dropdown list. Clicking the Add Button results in an AJAX Call to the Orchard CMS Web Server to associate the related blog post as well as some nice jQuery animation that appends the blog post to the list. Since this is using jQuery Ajax, performance is very good and the user interface is very responsive.
If you look closer at the Related Blog Posts Custom Content Part for Orchard CMS, you will notice that it has drag and drop grips that allow you to sort the order of the related blog posts. Some Orchard Blog Posts may be more important or related than others so simply dragging and dropping the related blog posts will execute a jQuery AJAX call that modifies the order in which the related blog posts are ordered. And as mentioned before, the Add and Remove Buttons are completely jQuery AJAX as well. Choosing to Add or Remove a related Orchard Blog Post will cause the Orchard CMS Server to be updated as well as the browser. Of course all of this works using proper security permissions and authentication tokens so there are no Orchard security related concerns.
Once you have finished choosing the related Orchard Blog Posts on the administrative side, you can of course display the related blog posts as you wish on the public Orchard Website Blog. You have complete access to all the information of each Orchard Related Blog Post and can display them appropriately at the end of the blog post or wherever you desire.
Again, this is the power and extensibility of Orchard CMS, which makes it a fantastic ASP.NET MVC CMS for your .NET Websites.
At some point I will probably add this custom Orchard module to my website as I have been wanting such functionality for marketing features. About 9 months ago I dedicated a lot of time to learning Orchard CMS Development and I am hoping to continue developing custom Orchard Modules and Orchard Themes full-time in 2012. If you are interested in hiring me for your next project, please contact me.