Dallby Dallby - 4 months ago 21
PHP Question

Silverstripe: Unable to delete pages from back end

Hi guys I can't seem to be able to delete pages from the admin back end. Can anyone help me understand why this is?

enter image description here

Answer

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:

CMSMain:
  enabled_legacy_actions:
    - CMSBatchAction_DeleteFromLive
    - CMSBatchAction_Delete

You can read more about the discussion around this on the PR that brought in the changes: https://github.com/silverstripe/silverstripe-framework/pull/4189 and https://github.com/silverstripe/silverstripe-cms/pull/1203

Further upgrade guidance here: https://docs.silverstripe.org/en/3.2/changelogs/3.2.0/#revert-to-legacy-cms-page-actions

Original ticket: https://github.com/silverstripe/silverstripe-cms/issues/631

Comments