How to delete archived page in 4.4

Silverstripe Version: 4.4

Updated to 4.4 today and I see the new (to me) archived area on the left for archived pages but I see no way to delete items from here.

I fumbled and hit save on a page. It has no content and no use - how can I delete it.

I see this from 2016 - 2018

And some info on Archive here: Archiving and restoring content – SilverStripe Documentation

But nothing on how to really delete something.

I don’t believe it has ever been possible to fully delete a page in SilverStripe. (Other than manually deleting the database records) But I agree, it is something that I too would like to be possible, especially now that archived pages are even more prominent in the newer version.

Thanks for the reply. Seems bizarre behaviour to not allow atomic deletion.

So archives just grow and grow perpetually over time?!


i would like to delete my archived site. I tried to restore it, and do it on my own but nothing happens. But it don’t matter because i don’t need it anymore. What can i do now?

best regards E.

Archiving is the new way to delete pages in SilverStripe 3.2

Deleting pages never actually deleted them in older versions of the CMS and this wording was often confusing for CMS users because they could then go and see these “deleted” pages later (by browsing deleted pages).

Another issue commonly encountered was that there was little clarity between Delete from draft and delete from live, so these have basically been removed and instead we now have “Archive” (delete from both live and draft and hide away) or “unpublish” (delete from live).

The wording and behaviour was updated to make things simpler as often the need to delete from live but NOT from draft was very limited.

The old behaviour can be brought back by changing the config setting like so:

    - CMSBatchAction_DeleteFromLive
    - CMSBatchAction_Delete

I did try your config in app.yml and it didn’t have any effect after /dev/build?flush

There is also a delete function in the CMSMain controller without a deprecation notice.

I added a canDelete function in the Page class and still no obvious delete button/ui.


Thank you for your reply.

archive is still not equal to delete though is it. It just moves all pages in that state to one archived area - it’s only shifted the “problem” to a consolidated area of the admin. I guess thats fine if no one can see the archive and/or we pretend it doesn’t exist.

If the old way still didn’t actually deleted anything - it’s unclear to me how enabling those legacy parts is any better/different.

I would argue this is no clearer or less confusing - delete means gone forever not hidden away in an archive forever.

I’m obviously missing something obvious as to why deleting an un-required page is unreasonable.

It’s especially problematic as it does it with DataObjects too. In some of my projects I have say, 100 active data object records and 4000+ obsolete ones. What’s the point of keeping that kind of legacy data for years?