You can define a "speaking URL" for each page in the zCMS. Normally, the zCMS automatically creates URL addresses according to the following scheme:
DOMAIN/LANGUAGE/ID/TITLE.htm
Here is an example:
If we create a page with the title "Contact" on the domain www.newcms.de in "English" and this page has the object ID "34", the automatic URL would look like this:
https://www.newcms.de/en/34/contact.htm
There is nothing wrong with this URL. However, it would be prettier if the ID "134" did not exist. This is where the "speaking URLs" come into play. For each folder or page, you can create your own URL in the "SPEAKING URL" field in the object's edit mode. However, you only have access to the area after the "DOMAIN" and the "LANGUAGE". Please also note the rules and restrictions of this feature, which are listed at the bottom of this article.
If you enter "contact.htm" in the field "SPEAKING URL" in our example, then the URL for the page is now:
https://www.newcms.de/en/contact.htm
Please also note that the "/en" in our examples is only available if you have activated the option "Activate prefix for languages" under "Administration -> Settings -> General". This is not necessary for single-language sites. But it is mandatory for multilingual websites!
Since version 8.5, folder structures can also be created with the "speaking URLs". Let's show the possibilities with an example:
You have a product folder with several products and would like to create URLs like https://www.newcms.de/en/products/pocketwatch.htm
and https://www.newcms.de/en/products/writstwatch.htm
. To do this, enter "products/pocketwatch.htm" and "products/wristwatch.htm" under "SPEAKING URL". The part "products" can be different everywhere and has nothing to do with the an existing folder "products". Each "speaking URL" is completely independent. This gives you complete freedom in naming your " speaking URLs".
No postfix (e.g. .htm) needs to be added to a directory structure. This makes it possible to use "products/product1". IMPORTANT: "products/product1/" does not work. The URL must not be ended with a /.
products/watches.htm => CORRECT
products/watches/ => ERROR
products/watches => CORRECT
There are strict rules for " speaking URLs". Only in this case they work. Furthermore, if you do not follow the rules, it is possible that parts or the entire website will no longer be accessible. Therefore, please take great care to comply with these rules:
123/products/watches.htm => ERROR
products/123/watches.htm => ERROR
products/watches123.htm => CORRECT
products/mans watches.htm => ERROR
products/mans-watches.htm => CORRECT
.htm
or .html
products/watches.htm => ERROR
products/watches.htm => CORRECT