[{"data":1,"prerenderedAt":953},["ShallowReactive",2],{"header:help":3,"footer:default":67,"story:navigation\u002Fsearch:help":250,"story:help\u002Fcategories":288,"story:help\u002Farticles\u002Ftwig-template-structure-reference":314,"no-guide:twig-template-structure-reference":59,"article:\u002Fhelp\u002Farticles\u002Ftwig-template-structure-reference":693,"story:contact":710,"help:tree:4668fcd9-a75b-4fd0-bded-b8a352f67141":900,"_apollo:default":952},{"name":4,"created_at":5,"published_at":6,"updated_at":7,"id":8,"uuid":9,"content":10,"slug":57,"full_slug":58,"sort_by_date":59,"position":60,"tag_list":61,"is_startpage":24,"parent_id":62,"meta_data":59,"group_id":63,"first_published_at":64,"release_id":59,"lang":65,"path":59,"alternates":66,"default_full_slug":59,"translated_slugs":59},"Help Center Header","2024-08-09T18:06:34.939Z","2024-10-21T21:58:39.217Z","2024-10-21T21:58:39.232Z",10082752,"3e9b88f7-c163-4657-a2f2-62532d600fad",{"_uid":11,"link":12,"badge":16,"items":17,"title":13,"buttons":50,"new_tab":24,"submenu":51,"alignment":13,"component":52,"badge_link":53,"top_menu_items":56},"e5645a1a-f991-40e8-8d67-e40ebc082b5a",{"id":13,"url":13,"linktype":14,"fieldtype":15,"cached_url":13},"","story","multilink","Help Center",[18,27,34,39,44],{"_uid":19,"link":20,"title":23,"new_tab":24,"submenu":25,"component":26},"5cbe2861-1f49-4166-97da-a4dddd8105e3",{"id":21,"url":13,"linktype":14,"fieldtype":15,"cached_url":22},"4c0a2d99-ec30-4579-8ef1-6bf5564d4839","help\u002Fcategories\u002F","Articles",false,[],"header___item",{"_uid":28,"link":29,"title":32,"new_tab":33,"component":26},"1c8edeb5-b9e9-4cb8-b1c6-c1f292f7d7cd",{"id":13,"url":30,"linktype":31,"fieldtype":15,"cached_url":30},"https:\u002F\u002Fwiki.foxycart.com\u002F","url","Documentation",true,{"_uid":35,"link":36,"title":38,"new_tab":33,"component":26},"8d7df70e-f087-4da0-b616-6f0e9a5af35c",{"id":13,"url":37,"linktype":31,"fieldtype":15,"cached_url":37},"https:\u002F\u002Fapi.foxycart.com\u002F","API Documentation",{"_uid":40,"link":41,"title":43,"new_tab":33,"component":26},"f76e7944-23d5-4652-87e4-cdae79272762",{"id":13,"url":42,"linktype":31,"fieldtype":15,"cached_url":42},"https:\u002F\u002Fstatus.foxy.io\u002F","System Status",{"_uid":45,"link":46,"title":49,"new_tab":24,"component":26},"0de16771-4c84-466c-a1da-d8568113c71f",{"id":47,"url":13,"linktype":14,"fieldtype":15,"cached_url":48},"01e4e370-f9b9-45af-8fa9-f15540699b0d","contact","Contact Us",[],[],"header",{"id":54,"url":13,"linktype":14,"fieldtype":15,"cached_url":55},"4a679eb7-662d-4ea4-a976-5a2acbf0b663","help\u002F",[],"help-header","navigation\u002Fhelp-header",null,20,[],10082747,"71b81c2e-5e09-48a1-a397-a3c72fcd344a","2022-09-21T14:50:25.655Z","default",[],{"name":68,"created_at":69,"published_at":70,"updated_at":71,"id":72,"uuid":73,"content":74,"slug":243,"full_slug":244,"sort_by_date":59,"position":245,"tag_list":246,"is_startpage":24,"parent_id":62,"meta_data":59,"group_id":247,"first_published_at":248,"release_id":59,"lang":65,"path":59,"alternates":249,"default_full_slug":59,"translated_slugs":59},"Default Footer","2024-08-09T18:06:59.024Z","2025-09-04T06:24:46.223Z","2025-09-04T06:24:46.241Z",10082753,"e59e67ac-248a-482f-84a1-53d4f318186a",{"_uid":75,"about":76,"logos":77,"socials":82,"sections":108,"component":225,"cta_title":226,"bottom_links":227,"cta_subtitle":241,"cta_button_link":242,"cta_button_text":183},"830983f5-c4c4-43c8-b150-86a5e3fa6dc8","Foxy’s hosted cart & payment page allow you to sell anything, using your existing website or platform.",[78],{"id":79,"alt":13,"name":13,"focus":13,"title":13,"filename":80,"copyright":13,"fieldtype":81},14760,"https:\u002F\u002Fa-us.storyblok.com\u002Ff\u002F1001040\u002Fx\u002F3b030847ec\u002Fb-corp.svg","asset",[83,90,96,102],{"_uid":84,"icon":85,"link":86,"name":88,"component":89},"faf0a618-ea94-42ea-9182-03be18c43216","fa-facebook",{"id":13,"url":87,"linktype":31,"fieldtype":15,"cached_url":87},"https:\u002F\u002Fwww.facebook.com\u002Ffoxycart","Facebook","footer___social",{"_uid":91,"icon":92,"link":93,"name":95,"component":89},"14309c18-7e79-423e-b375-34555bac0811","fa-instagram",{"id":13,"url":94,"linktype":31,"fieldtype":15,"cached_url":94},"https:\u002F\u002Fwww.instagram.com\u002Ffoxy_io","Instagram",{"_uid":97,"icon":98,"link":99,"name":101,"component":89},"8f7fe7cf-0dd3-4596-8334-226ea466716a","fa-linkedin",{"id":13,"url":100,"linktype":31,"fieldtype":15,"cached_url":100},"https:\u002F\u002Fwww.linkedin.com\u002Fcompany\u002Ffoxycart.com","LinkedIn",{"_uid":103,"icon":104,"link":105,"name":107,"component":89},"90a675b4-dd97-40b5-be09-00a87223d4c5","fa-youtube",{"id":13,"url":106,"linktype":31,"fieldtype":15,"cached_url":106},"https:\u002F\u002Fwww.youtube.com\u002Fuser\u002Ffoxycart","Youtube",[109,139,184,206],{"_uid":110,"name":111,"items":112,"component":138},"82849945-282f-488c-b18d-a8d2252f514a","Company",[113,120,126,132],{"_uid":114,"link":115,"title":118,"new_tab":24,"component":119},"1f699ab1-938b-4d9d-9825-aabcbe6f57fe",{"id":116,"url":13,"linktype":14,"fieldtype":15,"cached_url":117},"63634293-a749-4226-9439-9f38ee6dcda0","about-us","About Us","footer___menu_items",{"_uid":121,"link":122,"title":125,"new_tab":24,"component":119},"b26b00f1-a0e7-4be2-8ab3-428b8cc841f8",{"id":123,"url":13,"linktype":14,"fieldtype":15,"cached_url":124},"26cb7c55-faed-4a77-a291-1552d4111b3e","how-foxy-works","How Foxy Works",{"_uid":127,"link":128,"title":131,"new_tab":24,"component":119},"b40c68a0-1ceb-4226-9515-6176534f61fe",{"id":129,"url":13,"linktype":14,"fieldtype":15,"cached_url":130},"dc6657d7-7f4f-4c0d-b781-e971b038ee26","for-good","Foxy For Good",{"_uid":133,"link":134,"title":137,"new_tab":24,"component":119},"3ad0c134-bef9-4fff-b891-e09f16109036",{"id":135,"url":13,"linktype":14,"fieldtype":15,"cached_url":136},"23cae210-baf4-4588-9862-d09f4f52ccd2","brand-assets","Brand Assets","footer___section",{"_uid":140,"name":141,"items":142,"component":138},"a6805fa8-ac60-47f1-b8f0-f27aded0afbe","Product",[143,149,155,161,167,173,179],{"_uid":144,"link":145,"title":148,"new_tab":24,"component":119},"b39c8a4e-2383-486f-b76a-11fbb15d8134",{"id":146,"url":13,"linktype":14,"fieldtype":15,"cached_url":147},"bb04690f-fe98-4ce6-80be-05b950f2364f","features\u002F","Features",{"_uid":150,"link":151,"title":154,"new_tab":24,"component":119},"64f8a41f-c181-433d-bc0a-fc94e71ecbf6",{"id":152,"url":13,"linktype":14,"fieldtype":15,"cached_url":153},"c450c58d-761d-48c0-a9af-0b064611689b","pricing","Pricing",{"_uid":156,"link":157,"title":160,"new_tab":24,"component":119},"6e0b287f-fd8c-4146-9e0e-0ab0b5c9ce3c",{"id":158,"url":13,"linktype":14,"fieldtype":15,"cached_url":159},"fab20ad9-e76a-4947-b709-3a6fdfa88028","blog\u002Fcategories\u002Fproduct-updates","Product Updates",{"_uid":162,"link":163,"title":166,"new_tab":24,"component":119},"47e5a074-a6b5-4f1c-8c2f-89a2ae9f83eb",{"id":164,"url":13,"linktype":14,"fieldtype":15,"cached_url":165},"d2c83612-d611-47f3-a3b4-ca7fe08540b8","changelogs\u002F","Changelogs",{"_uid":168,"link":169,"title":172,"new_tab":24,"component":119},"b5c08774-542f-4ffd-b357-c94d674488b9",{"id":170,"url":13,"linktype":14,"fieldtype":15,"cached_url":171},"08876121-0df3-4ed9-aa11-902b3e41cd02","whats-next","What's Next",{"_uid":174,"link":175,"title":178,"new_tab":24,"component":119},"9c2704ed-6d9f-43e1-9e67-c8d91c083288",{"id":176,"url":13,"linktype":14,"fieldtype":15,"cached_url":177},"056a7857-b18f-4025-8f97-91a38fc19bc8","compare\u002F","Compare",{"_uid":180,"link":181,"title":183,"new_tab":24,"component":119},"5f2db35b-674b-406a-8fa7-d246633af9fe",{"id":13,"url":182,"linktype":31,"fieldtype":15,"cached_url":182},"https:\u002F\u002Fadmin.foxy.io\u002Fsign-up","Try Foxy Free",{"_uid":185,"name":186,"items":187,"component":138},"63fa1f29-4252-4640-9922-fe310e69e54a","Security",[188,194,200],{"_uid":189,"link":190,"title":193,"new_tab":24,"component":119},"1158ddb6-9eb0-466f-8eb6-7ca2ae66c8b8",{"id":191,"url":13,"linktype":14,"fieldtype":15,"cached_url":192},"1f58fb2c-8681-4742-b6e8-09999beae9f6","security-contact","Security Contact",{"_uid":195,"link":196,"title":199,"new_tab":24,"component":119},"9a79c54a-6022-4dfd-854b-766f5e4703ba",{"id":197,"url":13,"linktype":14,"fieldtype":15,"cached_url":198},"55cbfcc3-425a-4261-8037-54e919851d2d","pci","PCI Compliance",{"_uid":201,"link":202,"title":205,"new_tab":24,"component":119},"0b85f5b6-9534-4071-b323-b39d053dd4d7",{"id":203,"url":13,"linktype":14,"fieldtype":15,"cached_url":204},"c3ac0fe3-83e2-4879-afbd-d4c83e1590df","help\u002Farticles\u002Four-official-domains-public-code","Domains & Codebases",{"_uid":207,"name":208,"items":209,"component":138},"998ded67-d107-49f4-8154-ca6be51671ec","Support",[210,213,216,219,222],{"_uid":211,"link":212,"title":16,"new_tab":24,"component":119},"594ffd35-3049-4004-bb08-0db568ebd819",{"id":54,"url":13,"linktype":14,"fieldtype":15,"cached_url":55},{"_uid":214,"link":215,"title":32,"new_tab":33,"component":119},"0a1a55ab-a985-4f9d-8b42-26da714d0c1c",{"id":13,"url":30,"linktype":31,"fieldtype":15,"cached_url":30},{"_uid":217,"link":218,"title":38,"new_tab":33,"component":119},"61e0b7c8-aadf-419b-a339-b3ccabc65bf4",{"id":13,"url":37,"linktype":31,"fieldtype":15,"cached_url":37},{"_uid":220,"link":221,"title":43,"new_tab":33,"component":119},"fd67a89e-1c54-4d31-94b5-64be999062d6",{"id":13,"url":42,"linktype":31,"fieldtype":15,"cached_url":42},{"_uid":223,"link":224,"title":49,"new_tab":24,"component":119},"231a6f71-e996-4ad4-b033-d4d5542f34f0",{"id":47,"url":13,"linktype":14,"fieldtype":15,"cached_url":48},"footer","Get started with our *unlimited free trial*.",[228,235],{"_uid":229,"link":230,"text":233,"component":234},"f0b77210-2632-45a2-8436-e57cad84d01a",{"id":231,"url":13,"linktype":14,"fieldtype":15,"cached_url":232},"60ba16a2-c1f4-485f-b978-8d2eeeafbf5a","terms-of-service","Terms of Service","footer___bottom_links",{"_uid":236,"link":237,"text":240,"component":234},"4bd497b0-993f-4b4d-a5b7-8a49c7c8fec9",{"id":238,"url":13,"linktype":14,"fieldtype":15,"cached_url":239},"332302b9-1d18-4016-b9c8-9b33c72d782b","privacy-policy","Privacy Policy","No credit card required.",{"id":13,"url":182,"linktype":31,"fieldtype":15,"cached_url":182},"default-footer","navigation\u002Fdefault-footer",50,[],"11006268-07f9-41e9-96f3-c51fb723399d","2022-09-21T20:39:02.357Z",[],{"name":251,"created_at":252,"published_at":253,"updated_at":254,"id":255,"uuid":256,"content":257,"slug":279,"full_slug":282,"sort_by_date":59,"position":283,"tag_list":284,"is_startpage":24,"parent_id":62,"meta_data":59,"group_id":285,"first_published_at":286,"release_id":59,"lang":65,"path":59,"alternates":287,"default_full_slug":59,"translated_slugs":59},"Search","2024-10-21T22:08:54.973Z","2025-05-26T09:17:25.790Z","2025-05-26T09:17:25.804Z",13592003,"14cbc359-9ac1-4a7a-a8de-ad4ac8ef26d4",{"_uid":258,"name":251,"indices":259,"summary":13,"component":279,"primary_image":280},"5e4a56e8-76f1-4790-b3a7-70f1be97d042",[260,265,269,274],{"key":261,"_uid":262,"icon":13,"name":263,"component":264},"all","c12a3210-7323-4273-8217-5215e52efe84","All","index",{"key":266,"_uid":267,"icon":268,"name":23,"component":264},"help_center_article","5acff080-95e4-44d3-8dcf-1b19720af382","fa-file-alt",{"key":270,"_uid":271,"icon":272,"name":273,"component":264},"help_center_guide","b8fbc206-c083-471e-a1f0-0ebeb90a669d","fa-book","Guides",{"key":275,"_uid":276,"icon":277,"name":278,"component":264},"blog_post","23419e83-2e56-4c4c-8a05-9fd1b3c9a9bd","fa-file-image","Blog Posts","search",{"id":59,"alt":59,"name":13,"focus":59,"title":59,"source":59,"filename":13,"copyright":59,"fieldtype":81,"meta_data":281},{},"navigation\u002Fsearch",60,[],"11e1fd31-95cd-4fc9-b736-8b8910663e6c","2024-10-21T23:17:05.904Z",[],{"name":23,"created_at":289,"published_at":290,"updated_at":291,"id":292,"uuid":21,"content":293,"slug":307,"full_slug":22,"sort_by_date":59,"position":308,"tag_list":309,"is_startpage":33,"parent_id":310,"meta_data":59,"group_id":311,"first_published_at":312,"release_id":59,"lang":65,"path":59,"alternates":313,"default_full_slug":59,"translated_slugs":59},"2022-09-19T14:42:29.685Z","2024-07-30T18:17:22.506Z","2024-07-30T18:17:22.525Z",2660,{"_uid":294,"icon":13,"name":23,"guides":295,"pinned":24,"summary":296,"category":13,"component":297,"blog_posts":298,"content_hub":24,"icon_custom":299,"case_studies":300,"faq_sections":301,"help_articles":302,"featured_guides":303,"mailbox_category":13,"featured_articles":304,"featured_blog_posts":305,"featured_case_studies":306},"d6dae89a-907a-4bf7-82de-fe2ba875ee6e",[],"Get your questions answered with our browsable knowledge base.","help_center_category",[],{"id":59,"alt":59,"name":13,"focus":59,"title":59,"filename":13,"copyright":59,"fieldtype":81},[],[],[],[],[],[],[],"categories",530,[],2658,"19ebcdd2-027f-47f5-9a5b-a8992c959578","2022-09-19T16:24:39.219Z",[],{"name":315,"created_at":316,"published_at":317,"updated_at":318,"id":319,"uuid":320,"content":321,"slug":686,"full_slug":687,"sort_by_date":59,"position":688,"tag_list":689,"is_startpage":24,"parent_id":690,"meta_data":59,"group_id":691,"first_published_at":317,"release_id":59,"lang":65,"path":59,"alternates":692,"default_full_slug":59,"translated_slugs":59},"Twig template structure reference","2026-07-23T03:57:25.453Z","2026-07-23T04:10:01.719Z","2026-07-23T04:10:01.737Z",201070368627709,"4668fcd9-a75b-4fd0-bded-b8a352f67141",{"_uid":322,"body":323,"name":315,"image":681,"pinned":24,"summary":683,"category":684,"component":266,"related_articles":685},"1f7cf4c6-6440-4707-8116-f14a24c4c0eb",{"type":324,"content":325},"doc",[326,334,340,405,410,416,421,512,518,523,529,534,540,545,550,573,578,592,597,615,620,631,636],{"type":327,"attrs":328,"content":330},"heading",{"level":329,"textAlign":59},2,[331],{"text":332,"type":333},"Template levels","text",{"type":335,"attrs":336,"content":337},"paragraph",{"textAlign":59},[338],{"text":339,"type":333},"Foxy templates exist at two levels, both rendered with Twig:",{"type":341,"content":342},"bullet_list",[343,394],{"type":344,"content":345},"list_item",[346],{"type":335,"attrs":347,"content":348},{"textAlign":59},[349,354,356,361,363,367,368,372,374,378,380,383,385,388,389,392],{"text":350,"type":333,"marks":351},"Page templates",[352],{"type":353},"bold",{"text":355,"type":333}," — form the base of the actual page (",{"text":357,"type":333,"marks":358},"html",[359],{"type":360},"code",{"text":362,"type":333},", ",{"text":364,"type":333,"marks":365},"head",[366],{"type":360},{"text":362,"type":333},{"text":369,"type":333,"marks":370},"body",[371],{"type":360},{"text":373,"type":333}," tags). These are the templates found under ",{"text":375,"type":333,"marks":376},"Templates",[377],{"type":353},{"text":379,"type":333}," in the Foxy admin, and represent the different steps of the checkout flow: Cart Include, Cart (full page), Checkout, Receipt, and Email (HTML and text). Cart Include is technically a partial, but functions as a page template for the Sidecart, and doesn’t include the standard ",{"text":357,"type":333,"marks":381},[382],{"type":360},{"text":384,"type":333},"\u002F",{"text":364,"type":333,"marks":386},[387],{"type":360},{"text":384,"type":333},{"text":369,"type":333,"marks":390},[391],{"type":360},{"text":393,"type":333}," structure.",{"type":344,"content":395},[396],{"type":335,"attrs":397,"content":398},{"textAlign":59},[399,403],{"text":400,"type":333,"marks":401},"Partial includes",[402],{"type":353},{"text":404,"type":333}," — smaller, reusable pieces included within page templates. Partials can include other partials.",{"type":327,"attrs":406,"content":407},{"level":329,"textAlign":59},[408],{"text":409,"type":333},"Partial include hierarchy",{"type":411,"attrs":412,"content":413},"code_block",{"class":59},[414],{"text":415,"type":333},"cart.inc.twig\n  ├── svg.inc.twig\n  ├── errors.inc.twig\n  └── postal_code.inc.twig\n        └── regions.inc.twig\n\ncheckout.inc.twig\n  ├── cart.inc.twig\n  ├── errors.inc.twig\n  └── address.checkout.inc.twig\n        └── postal_code.inc.twig\n              └── regions.inc.twig\n\nreceipt.inc.twig\n  ├── cart.inc.twig\n  └── address.receipt.inc.twig\n        └── postal_code.inc.twig\n              └── regions.inc.twig\n\naddress.email.inc.twig       — included in responsive.email.twig\naddress.email.inc.txt.twig   — included in email.txt.twig\ncart.inc.txt.twig             — included in email.txt.twig\n",{"type":327,"attrs":417,"content":418},{"level":329,"textAlign":59},[419],{"text":420,"type":333},"Outputting partial includes",{"type":422,"content":423},"table",[424,445,466,486],{"type":425,"content":426},"tableRow",[427,437],{"type":428,"attrs":429,"content":431},"tableHeader",{"colspan":430,"rowspan":430,"colwidth":59},1,[432],{"type":335,"attrs":433,"content":434},{"textAlign":59},[435],{"text":436,"type":333},"Tag",{"type":428,"attrs":438,"content":439},{"colspan":430,"rowspan":430,"colwidth":59},[440],{"type":335,"attrs":441,"content":442},{"textAlign":59},[443],{"text":444,"type":333},"What it does",{"type":425,"content":446},[447,458],{"type":448,"attrs":449,"content":450},"tableCell",{"colspan":430,"rowspan":430,"colwidth":59,"backgroundColor":59},[451],{"type":335,"attrs":452,"content":453},{"textAlign":59},[454],{"text":455,"type":333,"marks":456},"include",[457],{"type":360},{"type":448,"attrs":459,"content":460},{"colspan":430,"rowspan":430,"colwidth":59,"backgroundColor":59},[461],{"type":335,"attrs":462,"content":463},{"textAlign":59},[464],{"text":465,"type":333},"Outputs the whole contents of the file at that spot in the template.",{"type":425,"content":467},[468,478],{"type":448,"attrs":469,"content":470},{"colspan":430,"rowspan":430,"colwidth":59,"backgroundColor":59},[471],{"type":335,"attrs":472,"content":473},{"textAlign":59},[474],{"text":475,"type":333,"marks":476},"embed",[477],{"type":360},{"type":448,"attrs":479,"content":480},{"colspan":430,"rowspan":430,"colwidth":59,"backgroundColor":59},[481],{"type":335,"attrs":482,"content":483},{"textAlign":59},[484],{"text":485,"type":333},"Outputs the whole contents of the file, and lets you override specific blocks within it.",{"type":425,"content":487},[488,498],{"type":448,"attrs":489,"content":490},{"colspan":430,"rowspan":430,"colwidth":59,"backgroundColor":59},[491],{"type":335,"attrs":492,"content":493},{"textAlign":59},[494],{"text":495,"type":333,"marks":496},"use",[497],{"type":360},{"type":448,"attrs":499,"content":500},{"colspan":430,"rowspan":430,"colwidth":59,"backgroundColor":59},[501],{"type":335,"attrs":502,"content":503},{"textAlign":59},[504,506,510],{"text":505,"type":333},"Loads the blocks from a file into memory without outputting anything, for manual placement with ",{"text":507,"type":333,"marks":508},"{{ block('name') }}",[509],{"type":360},{"text":511,"type":333},".",{"type":335,"attrs":513,"content":514},{"textAlign":59},[515],{"text":455,"type":333,"marks":516},[517],{"type":353},{"type":411,"attrs":519,"content":520},{"class":59},[521],{"text":522,"type":333},"{% include 'cart.inc.twig' %}\n",{"type":335,"attrs":524,"content":525},{"textAlign":59},[526],{"text":475,"type":333,"marks":527},[528],{"type":353},{"type":411,"attrs":530,"content":531},{"class":59},[532],{"text":533,"type":333},"{% embed 'checkout.inc.twig' %}\n{% endembed %}\n",{"type":335,"attrs":535,"content":536},{"textAlign":59},[537],{"text":495,"type":333,"marks":538},[539],{"type":353},{"type":411,"attrs":541,"content":542},{"class":59},[543],{"text":544,"type":333},"{% use 'cart.inc.twig' %}\n{# Nothing output yet #}\n{{ block('logo') }}\n{# Logo block output into page #}\n",{"type":327,"attrs":546,"content":547},{"level":329,"textAlign":59},[548],{"text":549,"type":333},"Blocks",{"type":335,"attrs":551,"content":552},{"textAlign":59},[553,555,559,561,565,567,571],{"text":554,"type":333},"Partial templates wrap chunks of markup in named ",{"text":556,"type":333,"marks":557},"block",[558],{"type":360},{"text":560,"type":333}," tags, so individual pieces can be overridden without copying the whole partial. For example, given a partial with ",{"text":562,"type":333,"marks":563},"block_a",[564],{"type":360},{"text":566,"type":333}," and ",{"text":568,"type":333,"marks":569},"block_b",[570],{"type":360},{"text":572,"type":333},":",{"type":411,"attrs":574,"content":575},{"class":59},[576],{"text":577,"type":333},"{% block block_a %}\n    \u003Cdiv class=\"title-container\">\n        \u003Ch1>{{ widget_title }}\u003C\u002Fh1>\n        \u003Cimg src=\"{{ widget_image }}\" \u002F>\n    \u003C\u002Fdiv>\n{% endblock block_a %}\n{% block block_b %}\n    \u003Ch2>{{ widget_subtitle }}\u003C\u002Fh2>\n{% endblock block_b %}\n",{"type":335,"attrs":579,"content":580},{"textAlign":59},[581,583,586,588,591],{"text":582,"type":333},"Using ",{"text":475,"type":333,"marks":584},[585],{"type":360},{"text":587,"type":333}," to override just ",{"text":568,"type":333,"marks":589},[590],{"type":360},{"text":572,"type":333},{"type":411,"attrs":593,"content":594},{"class":59},[595],{"text":596,"type":333},"{% embed 'widgets.inc.twig' %}\n    {% block block_b %}\n        \u003Cp>{{ widget_subtitle }}\u003C\u002Fp>\n    {% endblock block_b %}\n{% endembed %}\n",{"type":335,"attrs":598,"content":599},{"textAlign":59},[600,603,605,608,610,614],{"text":562,"type":333,"marks":601},[602],{"type":360},{"text":604,"type":333}," renders as in the original file; ",{"text":568,"type":333,"marks":606},[607],{"type":360},{"text":609,"type":333}," renders with the override. To keep the original block content and add to it, call ",{"text":611,"type":333,"marks":612},"{{ parent() }}",[613],{"type":360},{"text":572,"type":333},{"type":411,"attrs":616,"content":617},{"class":59},[618],{"text":619,"type":333},"{% embed 'widgets.inc.twig' %}\n    {% block block_b %}\n        {{ parent() }}\n        \u003Cp>{{ widget_date }}\u003C\u002Fp>\n    {% endblock block_b %}\n{% endembed %}\n",{"type":335,"attrs":621,"content":622},{"textAlign":59},[623,625,629],{"text":624,"type":333},"Changes to how the cart displays on checkout or receipt should be made directly in the cart include template — embedding ",{"text":626,"type":333,"marks":627},"cart.inc.twig",[628],{"type":360},{"text":630,"type":333}," from within a checkout or receipt embed call isn’t supported.",{"type":327,"attrs":632,"content":633},{"level":329,"textAlign":59},[634],{"text":635,"type":333},"Naming conventions",{"type":341,"content":637},[638,662],{"type":344,"content":639},[640,657],{"type":335,"attrs":641,"content":642},{"textAlign":59},[643,645,649,651,655],{"text":644,"type":333},"Twig block names in the default templates must remain in place, even if you rewrite a template entirely. For example, the checkout template must keep a block named ",{"text":646,"type":333,"marks":647},"checkout",[648],{"type":360},{"text":650,"type":333},", with a matching ",{"text":652,"type":333,"marks":653},"endblock checkout",[654],{"type":360},{"text":656,"type":333}," tag:",{"type":411,"attrs":658,"content":659},{"class":59},[660],{"text":661,"type":333},"{% block checkout %}\n{# stuff goes here #}\n{% endblock checkout %}\n",{"type":344,"content":663},[664],{"type":335,"attrs":665,"content":666},{"textAlign":59},[667,669,673,675,679],{"text":668,"type":333},"Twig filenames follow the pattern ",{"text":670,"type":333,"marks":671},"partial.context.inc.twig",[672],{"type":360},{"text":674,"type":333},", like ",{"text":676,"type":333,"marks":677},"address.checkout.inc.twig",[678],{"type":360},{"text":680,"type":333},". The context piece is optional.",{"id":59,"alt":59,"name":13,"focus":59,"title":59,"source":59,"filename":13,"copyright":59,"fieldtype":81,"meta_data":682},{},"Reference for Foxy's page templates and partial includes, how to output them with include\u002Fembed\u002Fuse, and Twig block and filename conventions.","45e43cc3-8895-479a-9136-9c5cf9c978c5",[],"twig-template-structure-reference","help\u002Farticles\u002Ftwig-template-structure-reference",-4550,[],2659,"cc37239b-b0ae-4cf6-af94-46440c77eced",[],{"html":694,"sections":695,"segments":707},"\u003Csection id=\"template-levels\" data-title=\"Template levels\" data-title-node=\"H2\">\u003Chr class=\"my-8\" style=\"margin-left: -48px; margin-right: -40vw\">\u003Ch2 data-anchor-id=\"template-levels\">Template levels\u003C\u002Fh2>\u003Cp>Foxy templates exist at two levels, both rendered with Twig:\u003C\u002Fp>\u003Cul>\u003Cli>\u003Cp>\u003Cstrong>Page templates\u003C\u002Fstrong> — form the base of the actual page (\u003Ccode class=\"badge bg-soft-danger text-danger\">html\u003C\u002Fcode>, \u003Ccode class=\"badge bg-soft-danger text-danger\">head\u003C\u002Fcode>, \u003Ccode class=\"badge bg-soft-danger text-danger\">body\u003C\u002Fcode> tags). These are the templates found under \u003Cstrong>Templates\u003C\u002Fstrong> in the Foxy admin, and represent the different steps of the checkout flow: Cart Include, Cart (full page), Checkout, Receipt, and Email (HTML and text). Cart Include is technically a partial, but functions as a page template for the Sidecart, and doesn’t include the standard \u003Ccode class=\"badge bg-soft-danger text-danger\">html\u003C\u002Fcode>\u002F\u003Ccode class=\"badge bg-soft-danger text-danger\">head\u003C\u002Fcode>\u002F\u003Ccode class=\"badge bg-soft-danger text-danger\">body\u003C\u002Fcode> structure.\u003C\u002Fp>\u003C\u002Fli>\u003Cli>\u003Cp>\u003Cstrong>Partial includes\u003C\u002Fstrong> — smaller, reusable pieces included within page templates. Partials can include other partials.\u003C\u002Fp>\u003C\u002Fli>\u003C\u002Ful>\u003C\u002Fsection>\u003Csection id=\"partial-include-hierarchy\" data-title=\"Partial include hierarchy\" data-title-node=\"H2\">\u003Chr class=\"my-8\" style=\"margin-left: -48px; margin-right: -40vw\">\u003Ch2 data-anchor-id=\"partial-include-hierarchy\">Partial include hierarchy\u003C\u002Fh2>\u003Cdiv class=\"position-relative w-100 overflow-hidden rounded-2\" data-code-block>\u003Cdiv class=\"d-flex justify-content-end border-bottom\" style=\"background:#2b2c3b;\">\u003Cbutton type=\"button\" class=\"btn btn-link btn-sm text-light\" title=\"Copy\" data-code-button>\u003Cspan data-code-default style=\"\">\u003Ci class=\"fal fa-copy me-2\">\u003C\u002Fi> Copy \u003C\u002Fspan>\u003Cspan class=\"text-success\" data-code-success style=\"display:none;\">\u003Ci class=\"fal fa-check ms-2\">\u003C\u002Fi> Copied \u003C\u002Fspan>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cdiv class=\"small\">\u003Cpre class=\"hljs p-2\" data-code-content>cart.inc.twig\n  ├── svg.inc.twig\n  ├── errors.inc.twig\n  └── postal_code.inc.twig\n        └── regions.inc.twig\n\ncheckout.inc.twig\n  ├── cart.inc.twig\n  ├── errors.inc.twig\n  └── address.checkout.inc.twig\n        └── postal_code.inc.twig\n              └── regions.inc.twig\n\nreceipt.inc.twig\n  ├── cart.inc.twig\n  └── address.receipt.inc.twig\n        └── postal_code.inc.twig\n              └── regions.inc.twig\n\naddress.email.inc.twig       — included in responsive.email.twig\naddress.email.inc.txt.twig   — included in email.txt.twig\ncart.inc.txt.twig             — included in email.txt.twig\n\u003C\u002Fpre>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\u003Csection id=\"outputting-partial-includes\" data-title=\"Outputting partial includes\" data-title-node=\"H2\">\u003Chr class=\"my-8\" style=\"margin-left: -48px; margin-right: -40vw\">\u003Ch2 data-anchor-id=\"outputting-partial-includes\">Outputting partial includes\u003C\u002Fh2>\u003Cdiv class=\"table-responsive w-100\">\u003Ctable class=\"table table-lg table-bordered my-5\">\u003Cthead class=\"thead-light\">\u003Ctr>\u003Cth>\u003Cp>Tag\u003C\u002Fp>\u003C\u002Fth>\u003Cth>\u003Cp>What it does\u003C\u002Fp>\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Ctd>\u003Cp>\u003Ccode class=\"badge bg-soft-danger text-danger\">include\u003C\u002Fcode>\u003C\u002Fp>\u003C\u002Ftd>\u003Ctd>\u003Cp>Outputs the whole contents of the file at that spot in the template.\u003C\u002Fp>\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>\u003Cp>\u003Ccode class=\"badge bg-soft-danger text-danger\">embed\u003C\u002Fcode>\u003C\u002Fp>\u003C\u002Ftd>\u003Ctd>\u003Cp>Outputs the whole contents of the file, and lets you override specific blocks within it.\u003C\u002Fp>\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>\u003Cp>\u003Ccode class=\"badge bg-soft-danger text-danger\">use\u003C\u002Fcode>\u003C\u002Fp>\u003C\u002Ftd>\u003Ctd>\u003Cp>Loads the blocks from a file into memory without outputting anything, for manual placement with \u003Ccode class=\"badge bg-soft-danger text-danger\">{{ block(&#039;name&#039;) }}\u003C\u002Fcode>.\u003C\u002Fp>\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\u003Cp>\u003Cstrong>include\u003C\u002Fstrong>\u003C\u002Fp>\u003Cdiv class=\"position-relative w-100 overflow-hidden rounded-2\" data-code-block>\u003Cdiv class=\"d-flex justify-content-end border-bottom\" style=\"background:#2b2c3b;\">\u003Cbutton type=\"button\" class=\"btn btn-link btn-sm text-light\" title=\"Copy\" data-code-button>\u003Cspan data-code-default style=\"\">\u003Ci class=\"fal fa-copy me-2\">\u003C\u002Fi> Copy \u003C\u002Fspan>\u003Cspan class=\"text-success\" data-code-success style=\"display:none;\">\u003Ci class=\"fal fa-check ms-2\">\u003C\u002Fi> Copied \u003C\u002Fspan>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cdiv class=\"small\">\u003Cpre class=\"hljs p-2\" data-code-content>{% include &#x27;cart.inc.twig&#x27; %}\n\u003C\u002Fpre>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cp>\u003Cstrong>embed\u003C\u002Fstrong>\u003C\u002Fp>\u003Cdiv class=\"position-relative w-100 overflow-hidden rounded-2\" data-code-block>\u003Cdiv class=\"d-flex justify-content-end border-bottom\" style=\"background:#2b2c3b;\">\u003Cbutton type=\"button\" class=\"btn btn-link btn-sm text-light\" title=\"Copy\" data-code-button>\u003Cspan data-code-default style=\"\">\u003Ci class=\"fal fa-copy me-2\">\u003C\u002Fi> Copy \u003C\u002Fspan>\u003Cspan class=\"text-success\" data-code-success style=\"display:none;\">\u003Ci class=\"fal fa-check ms-2\">\u003C\u002Fi> Copied \u003C\u002Fspan>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cdiv class=\"small\">\u003Cpre class=\"hljs p-2\" data-code-content>{% embed &#x27;checkout.inc.twig&#x27; %}\n{% endembed %}\n\u003C\u002Fpre>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cp>\u003Cstrong>use\u003C\u002Fstrong>\u003C\u002Fp>\u003Cdiv class=\"position-relative w-100 overflow-hidden rounded-2\" data-code-block>\u003Cdiv class=\"d-flex justify-content-end border-bottom\" style=\"background:#2b2c3b;\">\u003Cbutton type=\"button\" class=\"btn btn-link btn-sm text-light\" title=\"Copy\" data-code-button>\u003Cspan data-code-default style=\"\">\u003Ci class=\"fal fa-copy me-2\">\u003C\u002Fi> Copy \u003C\u002Fspan>\u003Cspan class=\"text-success\" data-code-success style=\"display:none;\">\u003Ci class=\"fal fa-check ms-2\">\u003C\u002Fi> Copied \u003C\u002Fspan>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cdiv class=\"small\">\u003Cpre class=\"hljs p-2\" data-code-content>{% use &#x27;cart.inc.twig&#x27; %}\n{# Nothing output yet #}\n{{ block(&#x27;logo&#x27;) }}\n{# Logo block output into page #}\n\u003C\u002Fpre>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\u003Csection id=\"blocks\" data-title=\"Blocks\" data-title-node=\"H2\">\u003Chr class=\"my-8\" style=\"margin-left: -48px; margin-right: -40vw\">\u003Ch2 data-anchor-id=\"blocks\">Blocks\u003C\u002Fh2>\u003Cp>Partial templates wrap chunks of markup in named \u003Ccode class=\"badge bg-soft-danger text-danger\">block\u003C\u002Fcode> tags, so individual pieces can be overridden without copying the whole partial. For example, given a partial with \u003Ccode class=\"badge bg-soft-danger text-danger\">block_a\u003C\u002Fcode> and \u003Ccode class=\"badge bg-soft-danger text-danger\">block_b\u003C\u002Fcode>:\u003C\u002Fp>\u003Cdiv class=\"position-relative w-100 overflow-hidden rounded-2\" data-code-block>\u003Cdiv class=\"d-flex justify-content-end border-bottom\" style=\"background:#2b2c3b;\">\u003Cbutton type=\"button\" class=\"btn btn-link btn-sm text-light\" title=\"Copy\" data-code-button>\u003Cspan data-code-default style=\"\">\u003Ci class=\"fal fa-copy me-2\">\u003C\u002Fi> Copy \u003C\u002Fspan>\u003Cspan class=\"text-success\" data-code-success style=\"display:none;\">\u003Ci class=\"fal fa-check ms-2\">\u003C\u002Fi> Copied \u003C\u002Fspan>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cdiv class=\"small\">\u003Cpre class=\"hljs p-2\" data-code-content>{% block block_a %}\n    \u003Cspan class=\"hljs-tag\">&lt;\u003Cspan class=\"hljs-name\">div\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">class\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;title-container&quot;\u003C\u002Fspan>&gt;\u003C\u002Fspan>\n        \u003Cspan class=\"hljs-tag\">&lt;\u003Cspan class=\"hljs-name\">h1\u003C\u002Fspan>&gt;\u003C\u002Fspan>{{ widget_title }}\u003Cspan class=\"hljs-tag\">&lt;\u002F\u003Cspan class=\"hljs-name\">h1\u003C\u002Fspan>&gt;\u003C\u002Fspan>\n        \u003Cspan class=\"hljs-tag\">&lt;\u003Cspan class=\"hljs-name\">img\u003C\u002Fspan> \u003Cspan class=\"hljs-attr\">src\u003C\u002Fspan>=\u003Cspan class=\"hljs-string\">&quot;{{ widget_image }}&quot;\u003C\u002Fspan> \u002F&gt;\u003C\u002Fspan>\n    \u003Cspan class=\"hljs-tag\">&lt;\u002F\u003Cspan class=\"hljs-name\">div\u003C\u002Fspan>&gt;\u003C\u002Fspan>\n{% endblock block_a %}\n{% block block_b %}\n    \u003Cspan class=\"hljs-tag\">&lt;\u003Cspan class=\"hljs-name\">h2\u003C\u002Fspan>&gt;\u003C\u002Fspan>{{ widget_subtitle }}\u003Cspan class=\"hljs-tag\">&lt;\u002F\u003Cspan class=\"hljs-name\">h2\u003C\u002Fspan>&gt;\u003C\u002Fspan>\n{% endblock block_b %}\n\u003C\u002Fpre>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cp>Using \u003Ccode class=\"badge bg-soft-danger text-danger\">embed\u003C\u002Fcode> to override just \u003Ccode class=\"badge bg-soft-danger text-danger\">block_b\u003C\u002Fcode>:\u003C\u002Fp>\u003Cdiv class=\"position-relative w-100 overflow-hidden rounded-2\" data-code-block>\u003Cdiv class=\"d-flex justify-content-end border-bottom\" style=\"background:#2b2c3b;\">\u003Cbutton type=\"button\" class=\"btn btn-link btn-sm text-light\" title=\"Copy\" data-code-button>\u003Cspan data-code-default style=\"\">\u003Ci class=\"fal fa-copy me-2\">\u003C\u002Fi> Copy \u003C\u002Fspan>\u003Cspan class=\"text-success\" data-code-success style=\"display:none;\">\u003Ci class=\"fal fa-check ms-2\">\u003C\u002Fi> Copied \u003C\u002Fspan>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cdiv class=\"small\">\u003Cpre class=\"hljs p-2\" data-code-content>{% embed &#x27;widgets.inc.twig&#x27; %}\n    {% block block_b %}\n        \u003Cspan class=\"hljs-tag\">&lt;\u003Cspan class=\"hljs-name\">p\u003C\u002Fspan>&gt;\u003C\u002Fspan>{{ widget_subtitle }}\u003Cspan class=\"hljs-tag\">&lt;\u002F\u003Cspan class=\"hljs-name\">p\u003C\u002Fspan>&gt;\u003C\u002Fspan>\n    {% endblock block_b %}\n{% endembed %}\n\u003C\u002Fpre>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cp>\u003Ccode class=\"badge bg-soft-danger text-danger\">block_a\u003C\u002Fcode> renders as in the original file; \u003Ccode class=\"badge bg-soft-danger text-danger\">block_b\u003C\u002Fcode> renders with the override. To keep the original block content and add to it, call \u003Ccode class=\"badge bg-soft-danger text-danger\">{{ parent() }}\u003C\u002Fcode>:\u003C\u002Fp>\u003Cdiv class=\"position-relative w-100 overflow-hidden rounded-2\" data-code-block>\u003Cdiv class=\"d-flex justify-content-end border-bottom\" style=\"background:#2b2c3b;\">\u003Cbutton type=\"button\" class=\"btn btn-link btn-sm text-light\" title=\"Copy\" data-code-button>\u003Cspan data-code-default style=\"\">\u003Ci class=\"fal fa-copy me-2\">\u003C\u002Fi> Copy \u003C\u002Fspan>\u003Cspan class=\"text-success\" data-code-success style=\"display:none;\">\u003Ci class=\"fal fa-check ms-2\">\u003C\u002Fi> Copied \u003C\u002Fspan>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cdiv class=\"small\">\u003Cpre class=\"hljs p-2\" data-code-content>{% embed &#x27;widgets.inc.twig&#x27; %}\n    {% block block_b %}\n        {{ parent() }}\n        \u003Cspan class=\"hljs-tag\">&lt;\u003Cspan class=\"hljs-name\">p\u003C\u002Fspan>&gt;\u003C\u002Fspan>{{ widget_date }}\u003Cspan class=\"hljs-tag\">&lt;\u002F\u003Cspan class=\"hljs-name\">p\u003C\u002Fspan>&gt;\u003C\u002Fspan>\n    {% endblock block_b %}\n{% endembed %}\n\u003C\u002Fpre>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cp>Changes to how the cart displays on checkout or receipt should be made directly in the cart include template — embedding \u003Ccode class=\"badge bg-soft-danger text-danger\">cart.inc.twig\u003C\u002Fcode> from within a checkout or receipt embed call isn’t supported.\u003C\u002Fp>\u003C\u002Fsection>\u003Csection id=\"naming-conventions\" data-title=\"Naming conventions\" data-title-node=\"H2\">\u003Chr class=\"my-8\" style=\"margin-left: -48px; margin-right: -40vw\">\u003Ch2 data-anchor-id=\"naming-conventions\">Naming conventions\u003C\u002Fh2>\u003Cul>\u003Cli>\u003Cp>Twig block names in the default templates must remain in place, even if you rewrite a template entirely. For example, the checkout template must keep a block named \u003Ccode class=\"badge bg-soft-danger text-danger\">checkout\u003C\u002Fcode>, with a matching \u003Ccode class=\"badge bg-soft-danger text-danger\">endblock checkout\u003C\u002Fcode> tag:\u003C\u002Fp>\u003Cdiv class=\"position-relative w-100 overflow-hidden rounded-2\" data-code-block>\u003Cdiv class=\"d-flex justify-content-end border-bottom\" style=\"background:#2b2c3b;\">\u003Cbutton type=\"button\" class=\"btn btn-link btn-sm text-light\" title=\"Copy\" data-code-button>\u003Cspan data-code-default style=\"\">\u003Ci class=\"fal fa-copy me-2\">\u003C\u002Fi> Copy \u003C\u002Fspan>\u003Cspan class=\"text-success\" data-code-success style=\"display:none;\">\u003Ci class=\"fal fa-check ms-2\">\u003C\u002Fi> Copied \u003C\u002Fspan>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cdiv class=\"small\">\u003Cpre class=\"hljs p-2\" data-code-content>{% block checkout %}\n{# stuff goes here #}\n{% endblock checkout %}\n\u003C\u002Fpre>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fli>\u003Cli>\u003Cp>Twig filenames follow the pattern \u003Ccode class=\"badge bg-soft-danger text-danger\">partial.context.inc.twig\u003C\u002Fcode>, like \u003Ccode class=\"badge bg-soft-danger text-danger\">address.checkout.inc.twig\u003C\u002Fcode>. The context piece is optional.\u003C\u002Fp>\u003C\u002Fli>\u003C\u002Ful>\u003C\u002Fsection>",[696,699,701,703,705],{"id":697,"title":332,"level":698},"template-levels","H2",{"id":700,"title":409,"level":698},"partial-include-hierarchy",{"id":702,"title":420,"level":698},"outputting-partial-includes",{"id":704,"title":549,"level":698},"blocks",{"id":706,"title":635,"level":698},"naming-conventions",[708],{"type":357,"content":709},"\u003Ch2>Template levels\u003C\u002Fh2>\u003Cp>Foxy templates exist at two levels, both rendered with Twig:\u003C\u002Fp>\u003Cul>\u003Cli>\u003Cp>\u003Cstrong>Page templates\u003C\u002Fstrong> — form the base of the actual page (\u003Ccode class=\"badge bg-soft-danger text-danger\">html\u003C\u002Fcode>, \u003Ccode class=\"badge bg-soft-danger text-danger\">head\u003C\u002Fcode>, \u003Ccode class=\"badge bg-soft-danger text-danger\">body\u003C\u002Fcode> tags). These are the templates found under \u003Cstrong>Templates\u003C\u002Fstrong> in the Foxy admin, and represent the different steps of the checkout flow: Cart Include, Cart (full page), Checkout, Receipt, and Email (HTML and text). Cart Include is technically a partial, but functions as a page template for the Sidecart, and doesn’t include the standard \u003Ccode class=\"badge bg-soft-danger text-danger\">html\u003C\u002Fcode>\u002F\u003Ccode class=\"badge bg-soft-danger text-danger\">head\u003C\u002Fcode>\u002F\u003Ccode class=\"badge bg-soft-danger text-danger\">body\u003C\u002Fcode> structure.\u003C\u002Fp>\u003C\u002Fli>\u003Cli>\u003Cp>\u003Cstrong>Partial includes\u003C\u002Fstrong> — smaller, reusable pieces included within page templates. Partials can include other partials.\u003C\u002Fp>\u003C\u002Fli>\u003C\u002Ful>\u003Ch2>Partial include hierarchy\u003C\u002Fh2>\u003Cpre>\u003Ccode>cart.inc.twig\n  ├── svg.inc.twig\n  ├── errors.inc.twig\n  └── postal_code.inc.twig\n        └── regions.inc.twig\n\ncheckout.inc.twig\n  ├── cart.inc.twig\n  ├── errors.inc.twig\n  └── address.checkout.inc.twig\n        └── postal_code.inc.twig\n              └── regions.inc.twig\n\nreceipt.inc.twig\n  ├── cart.inc.twig\n  └── address.receipt.inc.twig\n        └── postal_code.inc.twig\n              └── regions.inc.twig\n\naddress.email.inc.twig       — included in responsive.email.twig\naddress.email.inc.txt.twig   — included in email.txt.twig\ncart.inc.txt.twig             — included in email.txt.twig\n\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch2>Outputting partial includes\u003C\u002Fh2>\u003Cdiv class=\"table-responsive w-100\">\u003Ctable class=\"table table-lg table-bordered my-5\">\u003Cthead>\u003Ctr>\u003Cth>\u003Cp>Tag\u003C\u002Fp>\u003C\u002Fth>\u003Cth>\u003Cp>What it does\u003C\u002Fp>\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Ctd>\u003Cp>\u003Ccode class=\"badge bg-soft-danger text-danger\">include\u003C\u002Fcode>\u003C\u002Fp>\u003C\u002Ftd>\u003Ctd>\u003Cp>Outputs the whole contents of the file at that spot in the template.\u003C\u002Fp>\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>\u003Cp>\u003Ccode class=\"badge bg-soft-danger text-danger\">embed\u003C\u002Fcode>\u003C\u002Fp>\u003C\u002Ftd>\u003Ctd>\u003Cp>Outputs the whole contents of the file, and lets you override specific blocks within it.\u003C\u002Fp>\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>\u003Cp>\u003Ccode class=\"badge bg-soft-danger text-danger\">use\u003C\u002Fcode>\u003C\u002Fp>\u003C\u002Ftd>\u003Ctd>\u003Cp>Loads the blocks from a file into memory without outputting anything, for manual placement with \u003Ccode class=\"badge bg-soft-danger text-danger\">{{ block(&#039;name&#039;) }}\u003C\u002Fcode>.\u003C\u002Fp>\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\u003Cp>\u003Cstrong>include\u003C\u002Fstrong>\u003C\u002Fp>\u003Cpre>\u003Ccode>{% include &#039;cart.inc.twig&#039; %}\n\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>\u003Cstrong>embed\u003C\u002Fstrong>\u003C\u002Fp>\u003Cpre>\u003Ccode>{% embed &#039;checkout.inc.twig&#039; %}\n{% endembed %}\n\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>\u003Cstrong>use\u003C\u002Fstrong>\u003C\u002Fp>\u003Cpre>\u003Ccode>{% use &#039;cart.inc.twig&#039; %}\n{# Nothing output yet #}\n{{ block(&#039;logo&#039;) }}\n{# Logo block output into page #}\n\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch2>Blocks\u003C\u002Fh2>\u003Cp>Partial templates wrap chunks of markup in named \u003Ccode class=\"badge bg-soft-danger text-danger\">block\u003C\u002Fcode> tags, so individual pieces can be overridden without copying the whole partial. For example, given a partial with \u003Ccode class=\"badge bg-soft-danger text-danger\">block_a\u003C\u002Fcode> and \u003Ccode class=\"badge bg-soft-danger text-danger\">block_b\u003C\u002Fcode>:\u003C\u002Fp>\u003Cpre>\u003Ccode>{% block block_a %}\n    &lt;div class=&quot;title-container&quot;&gt;\n        &lt;h1&gt;{{ widget_title }}&lt;\u002Fh1&gt;\n        &lt;img src=&quot;{{ widget_image }}&quot; \u002F&gt;\n    &lt;\u002Fdiv&gt;\n{% endblock block_a %}\n{% block block_b %}\n    &lt;h2&gt;{{ widget_subtitle }}&lt;\u002Fh2&gt;\n{% endblock block_b %}\n\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>Using \u003Ccode class=\"badge bg-soft-danger text-danger\">embed\u003C\u002Fcode> to override just \u003Ccode class=\"badge bg-soft-danger text-danger\">block_b\u003C\u002Fcode>:\u003C\u002Fp>\u003Cpre>\u003Ccode>{% embed &#039;widgets.inc.twig&#039; %}\n    {% block block_b %}\n        &lt;p&gt;{{ widget_subtitle }}&lt;\u002Fp&gt;\n    {% endblock block_b %}\n{% endembed %}\n\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>\u003Ccode class=\"badge bg-soft-danger text-danger\">block_a\u003C\u002Fcode> renders as in the original file; \u003Ccode class=\"badge bg-soft-danger text-danger\">block_b\u003C\u002Fcode> renders with the override. To keep the original block content and add to it, call \u003Ccode class=\"badge bg-soft-danger text-danger\">{{ parent() }}\u003C\u002Fcode>:\u003C\u002Fp>\u003Cpre>\u003Ccode>{% embed &#039;widgets.inc.twig&#039; %}\n    {% block block_b %}\n        {{ parent() }}\n        &lt;p&gt;{{ widget_date }}&lt;\u002Fp&gt;\n    {% endblock block_b %}\n{% endembed %}\n\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>Changes to how the cart displays on checkout or receipt should be made directly in the cart include template — embedding \u003Ccode class=\"badge bg-soft-danger text-danger\">cart.inc.twig\u003C\u002Fcode> from within a checkout or receipt embed call isn’t supported.\u003C\u002Fp>\u003Ch2>Naming conventions\u003C\u002Fh2>\u003Cul>\u003Cli>\u003Cp>Twig block names in the default templates must remain in place, even if you rewrite a template entirely. For example, the checkout template must keep a block named \u003Ccode class=\"badge bg-soft-danger text-danger\">checkout\u003C\u002Fcode>, with a matching \u003Ccode class=\"badge bg-soft-danger text-danger\">endblock checkout\u003C\u002Fcode> tag:\u003C\u002Fp>\u003Cpre>\u003Ccode>{% block checkout %}\n{# stuff goes here #}\n{% endblock checkout %}\n\u003C\u002Fcode>\u003C\u002Fpre>\u003C\u002Fli>\u003Cli>\u003Cp>Twig filenames follow the pattern \u003Ccode class=\"badge bg-soft-danger text-danger\">partial.context.inc.twig\u003C\u002Fcode>, like \u003Ccode class=\"badge bg-soft-danger text-danger\">address.checkout.inc.twig\u003C\u002Fcode>. The context piece is optional.\u003C\u002Fp>\u003C\u002Fli>\u003C\u002Ful>",{"name":711,"created_at":712,"published_at":713,"updated_at":714,"id":715,"uuid":47,"content":716,"slug":48,"full_slug":48,"sort_by_date":59,"position":895,"tag_list":896,"is_startpage":24,"parent_id":59,"meta_data":59,"group_id":897,"first_published_at":898,"release_id":59,"lang":65,"path":59,"alternates":899,"default_full_slug":59,"translated_slugs":59},"Contact","2022-09-23T19:56:58.957Z","2025-05-08T18:24:40.382Z","2025-05-08T18:24:40.392Z",3138,{"seo":717,"_uid":720,"title":721,"action":722,"fields":723,"method":871,"columns":872,"subtitle":886,"component":48,"button_text":892,"submit_title":893,"submit_subtitle":894},{"_uid":718,"title":711,"plugin":719,"description":13},"24ff7574-3bcc-48d2-85b5-e529dfea1cc4","meta-fields","8f54f1da-9d8f-49b2-89e7-840e886491cb","We're here to help.","https:\u002F\u002Fusebasin.com\u002Ff\u002F029f48d65402",[724,729,733,842,845,850,865],{"_uid":725,"name":726,"type":333,"label":727,"options":13,"required":33,"component":728,"placeholder":13},"9a70b226-2036-4f90-a052-b3efa61c5896","name","Name","form___field",{"_uid":730,"name":731,"type":731,"label":732,"options":13,"required":33,"component":728,"placeholder":13},"86ba35be-ff43-4a28-8633-14052a8f6622","email","Email Address",{"_uid":734,"name":735,"type":736,"label":737,"options":738,"required":33,"component":728,"conditions":739,"placeholder":13},"3f827475-492c-4f97-aa1e-2386ac263b6c","topic","select","Topic","Presales, Support, Billing, Partnerships, Order Enquiry, Other",[740,796,806,813,821,829,835],{"_uid":741,"equals":742,"fields":743,"component":795},"e21d97dd-e68e-4fa6-ba97-bc40f3041dde","Order Enquiry",[744],{"_uid":745,"body":746,"type":793,"title":13,"component":794},"b64992bc-6d53-48b8-b7a0-d81e5a062e50",{"type":324,"content":747},[748],{"type":335,"content":749},[750,752,760,762,764,765,769,771,776,784,786,791],{"text":751,"type":333},"We are ",{"text":753,"type":333,"marks":754},"Foxy.io",[755],{"type":756,"attrs":757},"link",{"href":758,"uuid":59,"anchor":59,"custom":759,"target":59,"linktype":31},"http:\u002F\u002FFoxy.io",{},{"text":761,"type":333},", an ecommerce platform powering ecommerce for other merchants. We do not sell products, and are unable to assist with questions about order statuses or refunds for any merchants using our platform. Please contact the merchant you ordered from for assistance. If you’d like to report a store using Foxy for fraudulent practices, please select ‘other’ in the subject.",{"type":763},"hard_break",{"type":763},{"text":766,"type":333,"marks":767},"NOTE:",[768],{"type":353},{"text":770,"type":333}," We are ",{"text":772,"type":333,"marks":773},"not ",[774],{"type":775},"italic",{"text":777,"type":333,"marks":778},"Foxy.in",[779,783],{"type":756,"attrs":780},{"href":781,"uuid":59,"anchor":59,"custom":782,"target":59,"linktype":31},"http:\u002F\u002FFoxy.in",{},{"type":775},{"text":785,"type":333},". We are not in any way affiliated with ",{"text":777,"type":333,"marks":787},[788],{"type":756,"attrs":789},{"href":781,"uuid":59,"anchor":59,"custom":790,"target":59,"linktype":31},{},{"text":792,"type":333},", and cannot help in any way with your order from that website.","danger","global___alert","form___condition",{"_uid":797,"equals":798,"fields":799,"component":795},"8765c3e1-25cf-44aa-b8ea-fc6094acf9c3","Presales",[800],{"_uid":801,"name":802,"type":803,"label":13,"options":13,"required":24,"component":728,"conditions":804,"placeholder":13,"default_value":805},"cf464f8e-d643-4f6e-af29-d3abffaf7380","department_email_address","hidden",[],"hello@foxy.io",{"_uid":807,"equals":208,"fields":808,"component":795},"4007b6d8-77e5-421d-bd1e-6f336dd853fb",[809],{"_uid":810,"name":802,"type":803,"label":13,"options":13,"required":24,"component":728,"conditions":811,"placeholder":13,"default_value":812},"7b4c6aa5-a68c-45e0-9ce1-0a36af10c0c2",[],"help@foxy.io",{"_uid":814,"equals":815,"fields":816,"component":795},"1dbb8f11-613d-43cd-9e09-1b94f6e19219","Billing",[817],{"_uid":818,"name":802,"type":803,"label":13,"options":13,"required":24,"component":728,"conditions":819,"placeholder":13,"default_value":820},"a0ac0d1b-bc4f-4a6c-a682-581d450b0b73",[],"help+billing@foxy.io",{"_uid":822,"equals":823,"fields":824,"component":795},"a0a53a50-7172-4a29-ba58-181e38874e12","Partnerships",[825],{"_uid":826,"name":802,"type":803,"label":13,"options":13,"required":24,"component":728,"conditions":827,"placeholder":13,"default_value":828},"7aa011d9-f374-4aed-b5a5-929b54aaf152",[],"partners@foxy.io",{"_uid":830,"equals":742,"fields":831,"component":795},"a4cd431f-25d5-41c7-bfdc-02c908c8fb47",[832],{"_uid":833,"name":802,"type":803,"label":13,"options":13,"required":24,"component":728,"conditions":834,"placeholder":13,"default_value":805},"f5d52168-d6ae-451b-94ee-2ced1cbd28ad",[],{"_uid":836,"equals":837,"fields":838,"component":795},"25aba1ed-eb41-4bbc-aa89-f7a7167ea86e","Other",[839],{"_uid":840,"name":802,"type":803,"label":13,"options":13,"required":24,"component":728,"conditions":841,"placeholder":13,"default_value":805},"f40dfaef-c203-4b71-bf4e-e1b43cef192b",[],{"_uid":843,"component":844},"e9c53a05-f40a-4510-aaf8-bc072a235a0c","form___subject",{"_uid":846,"name":847,"type":848,"label":849,"options":13,"required":33,"component":728,"placeholder":13},"a4c4d385-fff4-4978-99fb-b68cfea623d6","message","textarea","Message",{"_uid":851,"name":852,"type":736,"label":853,"options":854,"required":33,"component":728,"conditions":855,"placeholder":13},"8a3c9f85-f438-427d-9c7a-d7b295a14b5b","existing_user","Are you an existing user?","No, Yes",[856],{"_uid":857,"equals":858,"fields":859,"component":795},"115933d6-262a-4b59-8fa8-579c5ad73de1","Yes",[860],{"_uid":861,"name":862,"type":333,"label":863,"options":13,"required":33,"component":728,"conditions":864,"placeholder":13},"44b6ff23-98f0-4e95-b7f5-c23e06415c2d","subdomain","Store Subdomain",[],{"_uid":866,"name":867,"type":736,"label":868,"options":869,"required":33,"component":728,"conditions":870,"placeholder":13},"922a5cef-3af2-4113-8855-36c7910e3ee3","user_type","What type of user are you?","Developer, Designer, Merchant",[],"POST",[873],{"_uid":874,"text":875,"title":884,"component":885},"7323b90d-a93a-4bf1-baa9-20d0b7ead61b",{"type":324,"content":876},[877],{"type":335,"content":878},[879,881,882],{"text":880,"type":333},"855.369.9227",{"type":763},{"text":883,"type":333},"9:30am-6pm Central M-F","Pre-sales, Sales, & Partnerships","contact___footer_column",{"type":324,"content":887},[888],{"type":335,"content":889},[890],{"text":891,"type":333},"Get in touch to get help from our friendly support team.","Submit","Success!","Your email has been received. We'll get back to you as soon as we can, but it might take a business day. If you don't hear back from us in a timely manner, please check your spam folder to ensure our reply didn't go there.",-80,[],"2fd9fb7d-a48a-4184-acfd-30022d8d6f08","2022-09-23T20:10:45.360Z",[],[288,901,927],{"name":375,"created_at":902,"published_at":903,"updated_at":904,"id":905,"uuid":906,"content":907,"slug":921,"full_slug":922,"sort_by_date":59,"position":923,"tag_list":924,"is_startpage":24,"parent_id":310,"meta_data":59,"group_id":925,"first_published_at":903,"release_id":59,"lang":65,"path":59,"alternates":926,"default_full_slug":59,"translated_slugs":59},"2023-01-19T16:30:39.158Z","2023-01-19T17:25:34.000Z","2023-01-19T17:25:34.017Z",28248,"d584ea62-7dcd-4152-be82-6ee0fdeb153c",{"_uid":908,"icon":909,"name":375,"guides":910,"summary":911,"category":13,"component":297,"blog_posts":912,"content_hub":24,"icon_custom":913,"case_studies":914,"faq_sections":915,"help_articles":916,"featured_guides":917,"mailbox_category":13,"featured_articles":918,"featured_blog_posts":919,"featured_case_studies":920},"a86c693a-d801-4062-b52b-47c4d9e82416","fa-pencil-paintbrush",[],"Customize Foxy related templates.",[],{"id":59,"alt":59,"name":13,"focus":59,"title":59,"filename":13,"copyright":59,"fieldtype":81},[],[],[],[],[],[],[],"templates","help\u002Fcategories\u002Ftemplates",70,[],"4e91bfd5-f795-474d-874f-ae78f4631d0c",[],{"name":928,"created_at":929,"published_at":930,"updated_at":931,"id":932,"uuid":684,"content":933,"slug":946,"full_slug":947,"sort_by_date":59,"position":948,"tag_list":949,"is_startpage":24,"parent_id":310,"meta_data":59,"group_id":950,"first_published_at":930,"release_id":59,"lang":65,"path":59,"alternates":951,"default_full_slug":59,"translated_slugs":59},"Advanced Template Customization","2026-07-23T03:33:42.362Z","2026-07-23T03:34:37.518Z","2026-07-23T03:34:37.530Z",201064539644123,{"_uid":934,"icon":13,"name":928,"type":935,"pinned":24,"summary":936,"category":906,"component":297,"blog_posts":937,"icon_custom":938,"case_studies":940,"faq_sections":941,"featured_guides":942,"mailbox_category":13,"featured_articles":943,"featured_blog_posts":944,"featured_case_studies":945},"0990cacf-3028-4cdb-838c-4a85d4fb99d3","simple","Host your own template design or edit the raw Twig markup for full control over the checkout experience.",[],{"id":59,"alt":59,"name":13,"focus":59,"title":59,"source":59,"filename":13,"copyright":59,"fieldtype":81,"meta_data":939},{},[],[],[],[],[],[],"advanced-template-customization","help\u002Fcategories\u002Fadvanced-template-customization",-870,[],"1e42cb9c-7eba-43cb-a2eb-2fa2d3307bb1",[],{},1784780319595]