Overview

8 tokens under the footer.* scope. Resolves on every page.

Usage

Drop a token anywhere the SSR layer will see it — HTML body, attribute value, inline JS, or inline CSS.

Inline in markup

<mmm-pdp-title>{{footer.about}}</mmm-pdp-title>
<!-- rendered -> -->
<mmm-pdp-title>We make indoor plants easy.</mmm-pdp-title>

Inside attribute values

<a href="/p/{{pdp.slug}}" title="Buy {{pdp.title}} for {{pdp.price}}">Shop</a>

Identity & flags 3

TokenPage bindingComponentDescription & sample
{{footer.about}}anyfooter-brand.jsFooter about-us blurb
Sample: We make indoor plants easy.
{{footer.copyright}}anyfooter-copyright.jsFooter copyright line
Sample: © 2026 Sample Store. All rights reserved.
{{footer.newsletter_heading}}anyfooter-newsletter.jsNewsletter section heading
Sample: Subscribe for updates

Social 5

TokenPage bindingComponentDescription & sample
{{footer.social.facebook}}anyfooter-social.jsFacebook profile URL url
Sample: https://facebook.com/samplestore
{{footer.social.instagram}}anyfooter-social.jsInstagram profile URL url
Sample: https://instagram.com/samplestore
{{footer.social.twitter}}anyfooter-social.jsTwitter / X profile URL url
Sample: https://x.com/samplestore
{{footer.social.youtube}}anyfooter-social.jsYouTube channel URL url
Sample: https://youtube.com/@samplestore
{{footer.social.linkedin}}anyfooter-social.jsLinkedIn page URL url
Sample: https://linkedin.com/company/samplestore

Tips

  • Tokens are case-sensitive — {{footer.title}} resolves; {{FOOTER.TITLE}} does not.
  • Whitespace inside the braces is tolerated: {{ footer.title }} works identically.
  • Unresolvable tokens fall through as empty strings rather than rendering the raw placeholder, so missing-data states stay clean.