Feature: #87085 - Fallback options for slug fields¶
See forge#87085
Description¶
In case of SEO optimizations and the daily work of an editor, now it is possible to define a list of fields in the slug configuration as nested array:
'columns' => [
'slug' => [
'config' => [
'generatorOptions' => [
// use value of 'nav_title'. If 'nav_title' is empty, use value of 'title'
'fields' => [['nav_title', 'title']]
]
]
],
]
Copied!
The fallback field can also be combined with other fields:
'columns' => [
'slug' => [
'config' => [
'generatorOptions' => [
// Concatenate path segments. In first segment, use 'nav_title' or 'title'.
'fields' => [['nav_title', 'title'], 'other_field']
]
]
],
]
Copied!
Hint¶
In this context:
['nav_title', 'title']
is the same as[['nav_title'], ['title']]
['nav_title', 'title']
is not the same as[['nav_title', 'title']]
Examples¶
Configuration value | Values of an example page record | Resulting slug |
---|---|---|
[['nav_title', 'title']] | ['title' => 'Products', 'nav_title' => ''] | /products |
[['title', 'subtitle']] | ['title' => 'Products', 'subtitle' => 'Product subtitle'] | /products |
['title', 'subtitle'] or [['title'], ['subtitle']] | ['title' => 'Products', 'subtitle' => 'Product subtitle'] | /products/product-subtitle |
['nav_title', 'title'], 'subtitle' | ['title' => 'Products', 'nav_title' => 'Best products', 'subtitle' => 'Product subtitle'] | /best-products/product-subtitle |
['seo_title', 'title'], ['nav_title', 'subtitle'] | ['title' => 'Products', 'nav_title' => 'Best products', 'subtitle' => 'Product subtitle', 'seo_title' => 'SEO product title'] | /seo-product-title/products |