Skip to content

Commit 5c5709f

Browse files
committed
update migrate-to-volto
1 parent d1bb236 commit 5c5709f

File tree

1 file changed

+30
-23
lines changed

1 file changed

+30
-23
lines changed

docs/backend/upgrading/upgrade-to-volto.md

Lines changed: 30 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -10,54 +10,54 @@ html_meta:
1010

1111
```{todo}
1212
Is this "upgrading" or "migrating"? It seems to be a migration more than an upgrade. Please clarify.
13+
14+
Technically it is a migration since the version of Plone does not get changed and it is no upgrade-step.
15+
It could be called a upgrade though because Volto is the new default frontend.
16+
Not 100% sure...
1317
```
1418

19+
1520
# Upgrading to Volto
1621

17-
```{todo}
18-
I think there needs to be an introduction to this chapter to give it better context. Here are a few questions I have when I jump to this document from who knows where.
22+
Plone 6 comes with a new default frontend, called Volto.
23+
Volto is written in React and uses `plone.restapi` to communicate with the backend.
24+
When creating a new site in Plone 6 you have the option to choose between creating a Volto site and a Classic Plone site.
25+
This is because there are some non-trivial differences between the configuration of a Classic Plone and a Volto site.
1926

20-
1. Why would someone want to upgrade (migrate?) to Volto versus staying with Classic UI?
21-
1. What is the target audience?
22-
1. What are the pre-requisites?
23-
1. Other?
27+
This document discusses these differences and tells admins and developers how to modify their existing Plone site to be compatible with Volto.
28+
Pre-requisites: The site needs to be upgraded to Plone 6 before
2429

25-
If you provide bullet points, I can write up the narrative and push to this PR.
26-
```
30+
Plone provides a form `/@@migrate_to_volto` that allows you to run all the required changes to your existing site to make it compatible with Volto.
31+
You can access this form in the browser when you are logged-in as an administrator by opening `http://localhost:8080/Plone/@@migrate_to_volto` (where `localhost` is your server, `8080` the port that Plone is running on and `Plone` is the name of the Plone instance).
32+
33+
After upgrading an existing site to Plone 6 (see {doc}`v60`) there will also appear a message **You can prepare your site for Volto, the default frontend of Plone 6!** with a link to that form.
2734

28-
Upgrading an existing site to run with Volto requires several changes to your existing content stored in the backend.
29-
The form `/@@migrate_to_volto` allows you to run all these steps directly.
30-
After you upgraded your existing Database to Plone 6 there also is a message **You can prepare your site for Volto, the default frontend of Plone 6!** with a link to the form `localhost:8080/Plone/@@migrate_to_volto`.
3135

32-
```{todo}
33-
The previous sentence lacks context.
34-
When did I upgrade my existing database?
35-
Is there documentation that describes the database upgrade process?
36-
```
3736

3837
```{warning}
3938
Test all migrations thoroughly before applying them on a production environment!
4039
41-
A migrated site will still work with Plone Classic UI, but it will behave differently.
42-
For example, editors can only effectively work with the content using Volto.
40+
A site that is make compatible with Volto will be accessible with Plone Classic UI, but it will behave differently.
41+
For example, editors can only effectively work with the content using Volto because html is no longer editable in the TinyMCE editor.
4342
```
4443

45-
4644
```{todo}
4745
`{py:mod}` does not link to the Python modules (see https://deploy-preview-1254--6-dev-docs-plone-org.netlify.app/backend/upgrading/upgrade_to_volto.html).
4846
4947
We could either use inline literals as shown in the suggestion, or we could link to their Glossary entry (or create one), GitHub repo, PyPI project, or relevant chapter in the docs. Which do you think is best?
48+
49+
I like `{py:mod}` because it is semantic and renders like a inline-literal. We don't require link in these cases.
5050
```
5151

5252
The required steps are:
5353

54-
1. **Install the packages `plone.volto` and `plone.restapi`.**
54+
1. **Install the packages {py:mod}`plone.volto` and {py:mod}`plone.restapi`.**
5555

56-
`plone.restapi` is the RESTful API for Plone that allows the frontend Volto to communicate with the backend.
57-
`plone.volto` configures Plone to work with Volto, the new default frontend for Plone 6.
56+
{py:mod}`plone.restapi` is the RESTful API for Plone that allows the frontend Volto to communicate with the backend.
57+
{py:mod}`plone.volto` configures Plone to work with Volto, the new default frontend for Plone 6.
5858

5959
1. **Migrate RichText fields to Volto blocks**
60-
60+
6161
Volto has a new editor called Slate, whereas Classic UI uses TinyMCE.
6262
This step converts the HTML stored in RichText fields to text blocks, allowing you to edit them in Volto.
6363
Images, links, and most kinds of HTML formatting are preserved.
@@ -102,3 +102,10 @@ The required steps are:
102102
The criteria of the collection are uses to configure a listing block in that page.
103103

104104
It is recommended to use the default settings, but you can choose to skip some of the migration steps in the form.
105+
106+
```{note}
107+
If you are migrating a existing site to Plone 6 using [{py:mod}`collective.exportimport`](https://pypi.org/project/collective.exportimport) and want to use Volto in the new site
108+
you do not need to use the form `@@migrate_to_volto`.
109+
110+
All the changes documented above can be done efficiently during export and import and are discussed [here](https://github.com/collective/collective.exportimport/issues/133).
111+
```

0 commit comments

Comments
 (0)