data.header_link is a TypolinkParameter object, always truthy — check the resolved URL instead. {f:uri.typolink(parameter: data.header_link)} Button text comes from the link's own title, not `header` — `header` only feeds the aria-label below (see its label). {data.header_link.title -> f:format.trim()} {customCtaLabel}{f:translate(key: '{cb:languagePath()}:frontend.readMore')}