Hallo Comunity,
ich habe gerade unsere Sitemap-Generierung um die Option multiPages=1 erweitert. Dabei tritt nun folgendes Problem auf:
Mit #nav.ref bekommt man ja normalerweise die PageRef zu einer Seite in der CMS_FUNCTION name="Navigation". Sofern ich aber auf multiPages=1 umstelle, wird das Objekt verändert und funktioniert nicht mehr sauber.
$CMS_VALUE()$ von beiden Elementen:
mit multiPages=1:
de.espirit.firstspirit.generate.functions.PageGroupFunctionImpl$PageGroupElement@5e3c2291{pageref:"3_8311200000_p",index:0}
ohne multipages=1:
<PAGEREF editor="17360" htmlname="3_8311200000_p" id="1003280" pageref="1003274" releaseRevision="14693835" releasedby="24677" revision="14693835" uniquedescription="3_8311200000_p"><LANG displayname="Schlauchschals" language="DE_DE"/><LANG displayname="Foulards-tubes" language="FR_FR"/><LANG displayname="Colsjaals" language="NL_NL"/><LANG displayname="Schlauchschals" language="DE_AT"/><LANG displayname="Schlauchschals" language="DE_CH"/><LANG displayname="Foulards-tubes" language="FR_CH"/><LANG displayname="Foulards-tubes" language="FR_BE"/><LANG displayname="Colsjaals" language="NL_BE"/><PAGE_LANG_SPEC language="DE_DE" showinpagegrp="1" showinsitemap="1"/></PAGEREF>
Wie komme ich an das, was normalerweise #nav.ref ist in diesem Fall?
Genutzt wird das Ganze im Verbund mit der previewId() und TPP. Beispielcode:
<CMS_FUNCTION name="Navigation" resultname="fr_cecilNavi">
<CMS_PARAM name="expansionVisibility" value="all"/>
<CMS_PARAM name="multiPages" value="1"/>
<CMS_PARAM name="root" value="pagefolder:cecil" />
<CMS_PARAM name="siteMap" value="1"/>
<CMS_PARAM name="suppressEmptyFolders" value="1" />
<CMS_ARRAY_PARAM name="pageRefRendering">
<CMS_ARRAY_ELEMENT index="0..10"><![CDATA[
{
"_previewId":$CMS_VALUE(previewId(element:#nav.ref.page).toJSON())$,
"_previewIdStructure":$CMS_VALUE(previewId(element:#nav.ref).toJSON())$
}$CMS_VALUE(if(!#nav.isLast || #nav.level!=0, ","))$]]></CMS_ARRAY_ELEMENT>
</CMS_ARRAY_PARAM>
</CMS_FUNCTION>
Auffällig ist auch, dass die erste Variante mit "_previewId" auf die grüne Ebene funktioniert.
beste Grüße
Jan
PS: aktuelle Version von Firstspirit: Version: 5.2.200105.78804, TPP Version 1.2.17 (getestet auch mit 1.2.24)