Calling all developers! We invite you to provide your input on Feature Experimentation by completing this brief survey.

 

Jeff Wallace
Sep 13, 2011
  5021
(4 votes)

Category Listing Dynamic Content Module

Based on CMS 6 R2

From time to time we receive requests for displaying listings based on categories.  Simple enough to code, right?

 

Allan Thraen recently posted a blog regarding using Page Providers to display an alternate navigation based on categories, with the idea in mind, that you could also use this same kind of functionality to create listings for things such as “Latest News” or something similar.  Great stuff!

 

Prior to this Joe Bianco and I had kicked around some ideas for a Dynamic Content module that would allow content contributors to create listings based on categories.   It seemed like before we could even finish our complete thoughts Jacob Kahn had already written the first round of code.  We discussed some additional possibilities which Jacob then applied.  Alas we have a nice usable and configurable “Content Listing” module. 

 

The basics of how to use this are as follows:

 

1) Create a new EPiServer page.

2) Select the Dynamic Content button on the rich text editor.

image

3) Select “Category Listing” from the drop down.

image

4) Select the “StartPoint” for the area of the tree structure where you want the module to begin searching categories.

5) Enter one-to-many category names that the listing will be based on. 

a) If a category exists in the system as you type it will be presented for you.  Simply select it.

image

b) If you enter a category that is not already present in the system, select the “+” button, and it will be added below the category control as well as to the category list in the backend.

6) Optionally enter a “Start” and “End” date to filter the items in the listing based on the “Start publish” date.  This is useful if you only want to list items that were published within a certain timeframe.

image

7) Select a “Sorting” order.

image

8) Select “ShowDate” if you want a date to be included in the listing.

9) Select “ShowPreviewText” if you want the preview text to be included in the listing.

image

 

Example result with “ShowDate” and “ShowPreviewText” selected:

image

 

Example result with “ShowDate” and “ShowPreviewText” NOT selected:

image

 

Download the EPiServer module file and use the install from a compressed file option.

Download the code.

 

Please note, this is intended as a starting point for you to customize for your project needs.  The code is provided “as is” without warranty or guarantee of operation.  Use at your own risk.  Good luck and enjoy!

Sep 13, 2011

Comments

Feb 3, 2012 02:39 PM

Awesome! Finally a use for Categories.

Christopher Willan
Christopher Willan Oct 11, 2012 03:33 PM

Brilliant use of categories, would definitely improve any 'related items' referencing. Would be extremely useful to do similar for documentation within the file manager.

Please login to comment.
Latest blogs
Level Up with Optimizely's Newly Relaunched Certifications!

We're thrilled to announce the relaunch of our Optimizely Certifications—designed to help partners, customers, and developers redefine what it mean...

Satata Satez | Jan 14, 2025

Introducing AI Assistance for DBLocalizationProvider

The LocalizationProvider for Optimizely has long been a powerful tool for enhancing the localization capabilities of Optimizely CMS. Designed to ma...

Luc Gosso (MVP) | Jan 14, 2025 | Syndicated blog

Order tabs with drag and drop - Blazor

I have started to play around a little with Blazor and the best way to learn is to reimplement some old stuff for CMS12. So I took a look at my old...

Per Nergård | Jan 14, 2025

Product Recommendations - Common Pitfalls

With the added freedom and flexibility that the release of the self-service widgets feature for Product Recommendations provides you as...

Dylan Walker | Jan 14, 2025

My blog is now running using Optimizely CMS!

It's official! You are currently reading this post on my shiny new Optimizely CMS website.  In the past weeks, I have been quite busy crunching eve...

David Drouin-Prince | Jan 12, 2025 | Syndicated blog

Developer meetup - Manchester, 23rd January

Yes, it's that time of year again where tradition dictates that people reflect on the year gone by and brace themselves for the year ahead, and wha...

Paul Gruffydd | Jan 9, 2025