By default every page should have an unique friendly URL, if I create 3 pages named "Landing Page" It will result in 3 different friendly URLs:
The naming will be increasing by 1 number.
When a friendly URL is renamed manually in the system using an older URL, it will replace the old friendly URL and disabled the old redirect. This will make the new page appear and re-use the old URL.
Here's an example:
The user have a page named Landing Page.
She used a friendly URL named /home-page in the past
and she updated it to /landing-page
The friendly URL /home-page will be archived in the History and used as a redirect.
Then, when she creates a new page named Home Page
The friendly URL will be /home-page-2
The friendly URL named /home-page will be available to use* and the old redirect should be deleted.
*It will only allow to use the friendly URL by including it manually in the input.
It will activate a validation Error because of the URL used elsewhere.
Note: should we facilitate the user with a direct link? If so: the destination item should have a visual state to identify it in the table, increasing the development time.
It will activate a validation Warning informing about the updating the redirect, if the user click on "Update" then the old redirect will be deleted automatically from the history list and placed as new redirect in the new page.
The history will need the localization button to allow the user to change the default language.
Inside the Redirections, in the Friendly URLs tab, we'll allow the navigation to the single URL to see all the active redirects and the history with the old Friendly URLs.
It won't be possible to add new redirects from this screen.
The table will use a Section component to divide the URLs by language.
(Already requested to Lexicon to have this option from Clay: https://issues.liferay.com/browse/LEXI-853)
Table Pagination vs Infinite Scroll
- How many localizable URL items do we expect to have?
- Automatic solutions might generate a huge amount of redirects, the best solution is to apply a "view all" to the modal that will navigate to the Friendly URLs Manager when clicked.
- Should we include Filters by Languages?
- It seems to be possible to include Languages Filters in the Filter and Order dropdown.
- Do we have Clay support for this component?
- Clay does support the Table Group component (already used in DM to divide by folders and files), we need to follow-up the ticket for the languages icons. (More info in the markup tab here: https://clayui.com/docs/components/table.html)