resolve-markers
Class:
\CPSIT\
Replaces marker-style keys (e.g.,
###NAV_) in the
processed data with the values stored under those keys. The typical pattern is
to use a marker as a named placeholder early in the chain — either as the
as
target of a preceding processor or directly in a
variables
entry — and then resolve all markers to clean variable
names in a final step. This keeps intermediate processors decoupled from the
variable names the template expects.
tt_content.my_element = HANDLEBARSTEMPLATE
tt_content.my_element {
templateName = MyElement
dataProcessing {
# Declare the expected output slots early using markers — these
# names will become the final template variables
10 = menu
10 {
as = ###mainNavigation###
levels = 2
}
20 = menu
20 {
as = ###footerLinks###
special = directory
special.value = 42
}
# Resolve all markers to clean variable names in one final step
90 = resolve-markers
90.removeNonMatchingMarkers = 1
}
}
After processing, the template receives
main and
footer as clean variable names. The markers at the top of
the chain serve as upfront documentation of what the template expects, while
the processors that follow fill those slots independently.
Properties
pattern- Regular expression used to identify marker keys. The first capture
group becomes the resolved variable name.
Default:
###(.*?)### removeNon Matching Markers - Boolean. When
1, variable keys that still match the marker pattern after resolution (i.e., no value was found for them) are removed from the processed data. Default:0.