A critical vulnerability was discovered in React Server Components (Next.js). Our systems remain protected but we advise to update packages to newest version. Learn More

Jacob Pretorius
Apr 19, 2022
  111
(0 votes)

Unpublish Content the Intuitive Way

Being someone with a technical background who is also "client-facing" means, quite often, that you are the person who has to explain a lot of the platform functionality to the "business" minded folk.

That's all fun and games as quite often people with no past experience with Optimizely directly, or even CMS/Commerce solutions as a whole, bring with them lots of weird and wonderful questions. Often with even weirder answers leading to interesting observations.

One that I've been asked more times than I can count is "How do I unpublish this content?".

Oh, it's super simple. See you're in preview mode now so scroll up so that hidden grey menu appears. Then click the "Tools" dropdown. Now click "Manage Expiration and Archiving". Then on that popup click the "now" next to "Expire date". Ok now click "Save". See super easy!

"That's.. weird 🤔"

Actually, come to think of it; yes, yes it is.

So I made a plugin for CMS 12 that makes it a bit more intuitive and puts the "Unpublish" functionality right where you (okay maybe not you, but the business person signing off our invoices) would expect it to be.

All you need to do is install it via the Optimizely NuGet feed and then add the below to your Startup.cs 

public void ConfigureServices(IServiceCollection services)
{
    // The usual stuff omitted

    // using dotcentric.Optimizely.Unpublish;
    services.AddUnpublish();
}

As usual, the code for this plugin can also be found on GitHub.

*Update*

Seems like this tiny change resonated with more people than I thought it would and I've had a few requests to see if we can get it added to the CMS core product. If you'd like to help make that happen please vote for it here https://feedback.optimizely.com/ideas/CMS-I-280

Apr 19, 2022

Comments

Please login to comment.
Latest blogs
A day in the life of an Optimizely OMVP: Learning Optimizely Just Got Easier: Introducing the Optimizely Learning Centre

On the back of my last post about the Opti Graph Learning Centre, I am now happy to announce a revamped interactive learning platform that makes...

Graham Carr | Jan 31, 2026

Scheduled job for deleting content types and all related content

In my previous blog post which was about getting an overview of your sites content https://world.optimizely.com/blogs/Per-Nergard/Dates/2026/1/sche...

Per Nergård (MVP) | Jan 30, 2026

Working With Applications in Optimizely CMS 13

💡 Note:  The following content has been written based on Optimizely CMS 13 Preview 2 and may not accurately reflect the final release version. As...

Mark Stott | Jan 30, 2026

Experimentation at Speed Using Optimizely Opal and Web Experimentation

If you are working in experimentation, you will know that speed matters. The quicker you can go from idea to implementation, the faster you can...

Minesh Shah (Netcel) | Jan 30, 2026