@christianm Thanks!
It works (I guess):
- If I don’t change stuff in splitting backend-PartPage => load-time from FrontEnd-Summary-Page is quite speedy.
- If I change something => longer loading time and changed value in FrontEnd-Summaray-Page.
But looks a bit weard and mess with all the nested flowQueries further down!
Unfortunately, I have to get the particular SmarterContainer otherwise the double Ancestor «[DL]: Nachschlagewerk …» would break the layout in FrontEnd-Summary-Page, on other hand I need this [DL]-tag in Backend for display correctly the reduced list-part.
So I checked the value of indentifier with:
#SmarterCollector.html
{namespace ts=TYPO3\TypoScript\ViewHelpers}
<f:if condition="{blnLinked}">
<f:debug>{linkedNode.identifier}</f:debug>
<ts:render path="CCRenderer" context="{node: linkedNode}" />
</f:if>
output:
I guess this matched value in linkedNode.identifier (with Identifier-String in Backend) is the right value to use for docu’s entryTags documentNode.Identifier-String-part.
This linkedNode.identifier is the Identifier for «the other page» or in this context «the linked part of split page-part» to speedUp (at least a bit) the Backend-Editing with this splitting in smaller parts.
#SmarterCollector.ts2
### SmarterCollector to use nodeContent in other Neos-places
prototype(Vendor.Site:SmarterCollector) < prototype(TYPO3.Neos:Content) {
CCRenderer = TYPO3.Neos:ContentCollectionRenderer
blnLinked = ${q(node).property('internalLink') != NULL && q(node).property('internalLink') != '' ? TRUE : FALSE}
linkedNode = ${q(q(node).property('internalLink')).find('[instanceof Sd.SmarterDesign:SmarterContainer]').get(0)}
@cache {
mode = 'cached'
entryTags {
# Whenever the linkedSplitPagePart>nodeType SmarterContainer changed => this change/flush the SmarterCollector's cache
1 = ${'Node_' + q(q(node).property('internalLink')).find('[instanceof Sd.SmarterDesign:SmarterContainer]').get(0).identifier}
# Whenever an descendant of the linkedSplitPagePart>nodeType SmarterContainer changed => this change/flush the SmarterCollector's cache
2 = ${'DescendantOf_' + q(q(node).property('internalLink')).find('[instanceof Sd.SmarterDesign:SmarterContainer]').get(0).identifier}
}
}
}
###Questions:
- is there an easier way, to get the identifier from the specific nodeType SmarterCollector, defined in yaml as «type: reference»? (without the mess of nested flowQueries)
- Can anyone show me some storage-solution (like reusable property/variable concept from js/php) for TypoScript, to define the identifier-string once and reuse for property «linkedNode» and also for concat the «entryTag-property» both-times?
- Did someone knows some Tool/Helper/«f:debug»-solution to check the cache easy and reliable: like this idea?