##1. Conceptional Thinking DimensionMenu/Prototype:
Maybe there is some conceptional gap in my use of prototypes:
I tried to use an own prototype for a more comprehensible layout.
#Protoype: Vendor.SitePackage:LanguageMenuLayout.fusion
composition.prototype(Vendor.SitePackage:LanguageMenuLayout) < prototype(Neos.Neos:DimensionsMenu) {
dimensions = 'language'
templatePath = 'resource://Vendor.SitePackage/Private/Fusion/Layouts/LanguageMenuLayout.html'
}
Used in BrandAndNavLayout wrapper:
#BrandAndNavLayout.fusion
prototype(Vendor.SitePackage:BrandAndNavLayout) < prototype(Neos.Fusion:Template) {
templatePath = 'resource://Vendor.SitePackage/Private/Fusion/Layouts/BrandAndNavLayout.html'
menu = Vendor.SitePackage:MenuLayout
languageMenu = Vendor.SitePackage:LanguageMenuLayout
}
Menu (with same approach) works fine.
Default LanguageMenu-fluid-template from neos.demo.site does not work:
-
{item.label}
contains document-node’s title instead of dimension(language)'s label. - {item.preset.uriSegment} is emtpy.
#default template from neos.demo.site
<div class="language-menu">
<div>
<f:for each="{items}" as="item">
<f:if condition="{item.state} == 'current'"><span class="language-menu-full">{item.label}</span><span class="language-menu-short" title="{item.label}">{item.preset.uriSegment}</span></f:if>
</f:for>
<span>▼</span>
</div>
<ul{attributes -> f:format.raw()}>
<f:for each="{items}" as="item">
<li{ts:render(path:'{item.state}.attributes', context: {item: item}) -> f:format.raw()}>
<f:if condition="{item.node}">
<f:then>
<neos:link.node node="{item.node}"><span class="language-menu-full">{item.label}</span><span class="language-menu-short" title="{item.label}">{item.preset.uriSegment}</span></neos:link.node>
</f:then>
<f:else>
<span class="language-menu-full">{item.label}</span><span class="language-menu-short" title="{item.label}">{item.preset.uriSegment}</span>
</f:else>
</f:if>
</li>
</f:for>
</ul>
</div>
When I call the Neos.Neos:DimensionMenu direct first point {item.label}
contains Dimension’s/Language’s label.
#BrandAndNavLayout.fusion
prototype(Vendor.SitePackage:BrandAndNavLayout) < prototype(Neos.Fusion:Template) {
templatePath = 'resource://Vendor.SitePackage/Private/Fusion/Layouts/BrandAndNavLayout.html'
menu = Vendor.SitePackage:MenuLayout
languageMenu = Neos.Neos:DimensionMenu {
dimension = 'language'
templatePath = 'resource://Vendor.SitePackage/Private/Fusion/Layouts/LanguageMenuLayout.html'
}
}
```
###Questions:
***Do I have to use prototype different?***
*Why own capsulate prototype does not work?*
*Is there a gap in my conceptional thinking/use of prototype in general or specially with DimensionMenu?*
___
##2. Outdated {item.preset.uriSegment}
###Situation:
`{item.preset.uriSegment}` is still empty. Maybe some stuff in Neos has change and noes.demo.site-template is outdated? I guess, because, Neos.demo.site's `{item.preset.uriSegment}` is also empty!
###Question:
***How I can use each Language's uriSegment from Settings.yaml in fusion-template?***
___
##3. Workflow and less error-prone Multi-Language-Editoring
###Situation:
After set `ContentRepsitory:contentDimensions:language` configuration in Settings.yaml, in Backend the Dimensions-Selector appears:
<img src="//assets-discuss-neos-io.s3-eu-central-1.amazonaws.com/original/2X/4/42cd419827dc4532457ba09b1ef5ba94aa832b32.png" width="668" height="174">
This is *only shown first after site-load*. After a change with in-place-editing Content, select an other node in «structure panel» or do stuff in inspector from a node, the selected Dimensions disappears, because of other stuff will appear instead (like text-style).
###Problem:
A: The dimension-selector (Chosen Language) ***does not re-appear***, after save change (although the text-stuff is gone).
B: The dimensions-selector (Chosen Language) ***does not re-appear***, also after click on root-node in structure.
C: The dimensions-selector (Chosen Language) ***does not re-appear***, also after jump to a different page/document-node in page-tree-panel.
###Workaround:
The Editor has to reload the Browser-Page. Only this brings the dimension-selector back: And with this the «secure to be in the right dimension» and the perception in which dimension/language he is currently, while jumping a lot in pages, dimensions and structure.
###Question:
***Is this the default behavior? Could i change this behavior with simple config?***
###Remark:
I guess for in content-editing with multi languages/dimensions, when Editors have change different stuff in different sites and dimensions a ***re***-**appearing** from the chosen dimension/language would help to avoid faults and edit/add/delete content in wrong dimensions.
###Question:
**If the disappearing and not re-appearing is default behavior, should I open an issue on github?**
*Or what is your experience with multi-language-page-editing and dimension-blind work? Do you have an other/more simple/less error-prone workflow?*