Take the community feedback survey now.

Jacob Pretorius
Apr 19, 2022
  5040
(12 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

Johnny Mullaney
Johnny Mullaney Apr 19, 2022 11:39 AM

This is really neat. Thanks Jacob

Mari Jørgensen
Mari Jørgensen Apr 19, 2022 06:18 PM

Nice. Should be added to core product!

Giuliano Dore
Giuliano Dore Apr 20, 2022 08:08 AM

Really neat

PELLE NIKLASSON
PELLE NIKLASSON Apr 20, 2022 09:55 AM

Nice!

Surjit Bharath
Surjit Bharath Apr 27, 2022 06:21 PM

Love it!

KennyG
KennyG May 12, 2022 06:23 PM

Sounds like you've been talking to my users! :)

Sep 10, 2025 05:34 AM

Jacob Pretorius's article sheds light on the often-overlooked challenge of content unpublishing in Optimizely, highlighting the unintuitive process that can confuse non-technical users. His solution—a plugin that streamlines the unpublishing process—offers a practical approach to enhance user experience. At Aimgrip, we recognize the importance of intuitive interfaces and appreciate solutions that bridge the gap between technical complexity and user accessibility. This insight is valuable for anyone looking to improve content management workflows.

Please login to comment.
Latest blogs
Speeding Up Local Development with a Fake OpenID Authentication Handler

When working with OpenID authentication, local development often grinds to a halt waiting for identity servers, clients, and users to be configured...

Eric Herlitz | Oct 20, 2025 |

How Optimizely MCP Learns Your CMS (and Remembers It)

In Part 1, I introduced the “discovery-first” idea—an MCP that can plug into any SaaS CMS and learn how it’s structured on its own. This post gets...

Johnny Mullaney | Oct 20, 2025 |

Building a Custom Payment in Optimizely Commerce 14 (with a simple “Account” method)

This post outlines a simplified method for integrating Account payments into Commerce 14, detailing a minimal working path without extensive...

Francisco Quintanilla | Oct 17, 2025 |

Going Headless: Making the Right Architectural Choices

Earlier this year, I began a series of articles about headless architecture: Going Headless: Optimizely Graph vs Content Delivery API Going Headles...

Michał Mitas | Oct 17, 2025

How to Use IPlacedPriceProcessor in Optimizely Commerce to Preserve Custom Line Item Prices (Donation Example)

Optimizely Commerce 12+ automatically validates line item prices based on catalog data, which can overwrite user-entered prices for donations or...

Francisco Quintanilla | Oct 15, 2025 |

Optimizely CMS - Learning by Doing: EP05 - Create Content Tree: Demo

  Episode 5  is Live!! The latest installment of my  Learning by Doing: Build Series  on Optimizely CMS 12 is now available on YouTube!   This vide...

Ratish | Oct 15, 2025 |