Developers
Upgrading
What to do on every PageTree update, and a summary of the changes per version.
General procedure
PageTree updates come through your October CMS project, like those of the core and of the other marketplace plugins.
- Back up the database and the website files.
- Read the notes of the version you are about to install below.
- Update from the website root:
This command updates October CMS and the plugins (it is the same asphp artisan october:updatecomposer updatefollowed byphp artisan october:migrate). To update PageTree only:
Without the command line: Settings → Software Updates, Check For Updates button, then install the updates offered.composer update lucaspalomba/pagetree-plugin php artisan october:migrate - Check the installed version:
Or in the back-office: Settings → Software Updates → Manage Plugins.php artisan plugin:list - On your other servers, deploy the updated
composer.lock, then runcomposer installandphp artisan october:migrate.
Updates are only available when PageTree is part of the project bound to the website. If you bind the website to another project with project:set, that project needs a PageTree license too.
Uninstalling
php artisan plugin:remove LucasPalomba.PageTree deletes the plugin files and its tables: all block pages and custom blocks are erased. Back up the database first.
Upgrading to 2.0 (October CMS 4.2+)
Version 2.0 requires October CMS 4.2 or later. Sites running October CMS 3.x to 4.1 must stay on PageTree 1.x (branch support/1.x, last release 1.0.7).
- First upgrade October CMS to 4.2.
- Then update PageTree and run
php artisan october:migrate.
Version 2.0 has no database migration: existing pages and blocks are kept as they are. Blocks developed for PageTree need no changes. However, back-office JavaScript written for the Vue 2 editor must be ported to Vue 3.
Upgrading to 2.1
- Run
php artisan october:migrateto add the new SEO fields. - Pages that are inactive, unpublished or scheduled in the future now return a 404 error. Check the Active and Published values of your pages after upgrading.
- Twig code typed inside block content (for example
{{ this.page.title }}in a Text block) is now displayed as text instead of being executed.
Upgrading to 2.2
- Run
php artisan october:migrateto create the custom blocks table.
Upgrading to 2.3
- Run
php artisan october:migrate: it creates thelucaspalomba_pagetree_versionstable of the version history. Until it runs, pages are saved as before, without history. - The backend menu entry now requires the Manage block pages permission. Users who only have Manage block pages settings open the settings from the Settings page.
- Pages are now rebuilt when a custom block they use changes, without saving them again.
Upgrading to 2.4
- No database migration.
- Administrators with the Manage block pages permission now see the inactive, unpublished or scheduled pages on the website instead of a 404 error. To check what visitors see, use a private window.
- Your blocks and custom blocks keep working without changes. To make their fields editable in place, use the
pagetreeEditablefilter.
Release summary
2.4.0
- Editing on the website: editors switch a page to edit mode from the website, edit texts in place, move, hide, duplicate or delete blocks, open a block form in a side panel and save everything at once.
- Editing in the editor preview: toolbar on block hover (up, down, parent block, edit) and texts editable in place. Links are disabled in the preview.
pagetreeEditableTwig filter to make block fields editable in place.- The page with the URL
/is served as the home page (it returned a 404 error). - In the editor, the URL of a new page starts with
/and follows the title.
2.3.0
- Block history, per language, in the Editor: preview and restore a previous version, name versions with a title and a description. See Version history.
- Security: the preview route no longer compiles the HTML sent by the browser as Twig, and errors no longer return internal details.
- Pages are rebuilt when their rendered blocks change: an edited custom block is up to date without saving the page again, and absolute URLs follow the current host.
- The menu entry only appears with the permission that opens the Editor; the settings screen is translated.
create:block: the folder matches the class name, invalid names are refused and the generated form no longer declaresidorisActive.- The Editor navigator flags unpublished pages and pages whose publication is scheduled.
2.2.0
- Custom blocks: superusers create blocks from the Custom blocks section of the editor, with a form builder, data sources (Tailor entries or plugin models) and a Twig template.
- Inactive custom blocks are flagged in the navigator, like inactive pages.
2.1.0
- Pages managed in the October CMS Editor, grouped by URL level, with the layout and the status in the header.
- Detachable preview window.
- SEO: meta title and description with a preview, Open Graph, Twitter card, canonical URL, robots, sitemap exclusion,
pageTreeSeocomponent (hreflang, JSON-LD). - October CMS components usable as blocks.
- New blocks: Button, Quote, Questions / answers, Spacer, Call to action, Files, Hero banner, Image and text, Cards, Section. Styles based on
:where()and the--ptb-*variables. - Displayed? checkbox added automatically to every block.
- Only pages that are active, published and whose date is past are served.
- Block content is no longer evaluated as Twig.
- Title H1 and Link removed from the library (still rendered and editable). Logo block removed.
- Fixes: pages containing a block type that no longer exists, default values of block forms, empty preview style and script entries, SEO tab controls.
2.0.0
- October CMS 4.2 compatibility: back-office Vue components ported to Vue 3.
- The
pagetree/*back-office routes require a back-office session and thelucaspalomba.pagetree.pagespermission. Page and settings permissions registered. - Fixes: component added twice in a grid cell, "Back to Components" on blocks with a repeater, form panel overflow, grid templates, icon picker, preview stylesheet URL.
1.0.7
- Last release for October CMS 3.x and 4.1. Added a layout field to pages.