January 10, 2018

Making Episerver Categories More...Useful.

Episerver's categories work fine for what they do, but they're crammed into the legacy Admin area and, compared to the rest of the platform, feel a bit dated to me.

Coming from the Ektron world, the comparative Taxonomy functionality was very front-and-center. While Ektron's eventually came to be over-used (and abused) in any number of implementations, categorization of content using pre-defined lists and structures is still important to many organizations.

If you need the hierarchy, then Episerver's Category property works well for that. But sometimes I don't really need hierarchy so much as I need to manage somewhat flat lists of categories - not all of which are really applicable to all content.

In addition, I may sometimes want to allow multiple selections from that list while at other times it needs to be an exclusive selection. Enter ISelectionFactory.

What follows is a bit of a thought experiment that shows how to use an external data source to feed a selection factory while experimenting with using Episerver Categories as the source.

January 3, 2018

Hijacking Episerver Find's Unified Search Text

I'm going to sort of build onto @kennygutierrez's recent quick-tip post regarding limiting indexing with your developer Find index with a Find tip of my own.

In the past few weeks, I've had a need to inject my own logic into how Find aggregates text for its UnifiedSearch. I won't get into the specifics of what I was doing (it would raise some questions as well as some eyebrows, to be honest), but I'd like to share the solution I found in the Episerver forums (sorry that I didn't save which post and therefore can't credit the poster, though I certainly owe them a drink).

There will only be a couple of short code snippets with this as it's really an elegantly simple, yet quite powerful solution.

November 8, 2017

Get Schooled by Troy Hunt at Episerver #Ascend2018

It may be fair to say that most of the developer audience going to Episerver Ascend in 2018 is already familiar with Troy Hunt (@troyhunt) and his, in my opinion, amazingly valuable work. For anyone who may not be familiar, I’m happy to elucidate the reasons I recommended we seek Troy out to keynote our main event of the year.

September 6, 2017

Building an Episerver Component with Dojo including Localization and Context

I'm rather torn about whether or not to break this up into multiple, topical posts as it threatens to be a bit long. We'll see how it goes... (ended up being one very long post)

I recently released a new "Page Preview" package for Episerver 10+ that adds a (somewhat large and obvious) Page Preview button to the author components / gadgets. The add-on is documented in the Git repo linked. This article (or series) is more about creating such a gadget - I'm going to keep it as high-level and logical as I can.

My add-on uses a Partial Router to function, which is merely utilized by the functionality the add-on is meant to provide, not core to the fact that it is a component. So though that is in my code, it's not covered here. I do cover building a partial router in the docs I wrote for my Episerver Ascend 2017 presentation and the topic is definitely worth a Google if you've a mind to check it out.

August 31, 2017

Now Available: Episerver Property Validation

I'm trying to do more to get code wrapped up into packages and put into the Episerver Nuget feed.

The first of these I've managed to get posted is a collection of validation attributes that can be applied to different types of content properties. Some of them affect strings, some affect media, and some affect lists/arrays, including ContentAreas.

I won't go into full detail for each here. For that, see the ReadMe on Github. What I will do is pick one or two and go through why I thought these were important to share and use.

Quick Tip: Localized Strings in Episerver Attributes

I have a few blog posts I want to get done, but for now I'm starting with a quick tip I wanted to put out there for any newbie developers working in Episerver or working with translations in the authoring environment. I'm rather new to it at the moment, so every little bit helps.

This post is a quick solution to providing translated (or translatable) text that's being set within one of Episerver's class or property attributes - where only constants are expected.

August 16, 2017

Episerver Shared Content with *Partial* Override Control

I was asked to create a quick proof of concept for sharing content between sites in Episerver. While there are many ways to do this, I wanted to create one that allowed for only part of the content to be overridden while the rest was enforced from the parent. The View shows how the output to the page can be determined on whether there is content available.

I don't claim it to be perfect nor production-ready. Just a bit of fun and a PoC.