Is there a way to conditionally override the navigation menu for a Shopify Theme in Liquid?
Is there a way to conditionally override the navigation menu for a Shopify Theme in Liquid?
The original theme has:
{%- liquid
assign render_menu = false
if section.settings.main_menu != blank
assign menu = linklists[section.settings.main_menu]
if menu.links.size != 0
assign render_menu = true
endif
endif
-%}```
I'd like to update this so that if the page viewed is using the template page.contractors.liquid, it uses the navigation menu with the handle contractor-menu instead of main-menu. Either that or display the contractor menu as an additional menu below the header. Any ideas?
I'm brand new to Liquid and tried this:
{%- liquid assign render_menu = false
if section.settings.main_menu != blank
if template == 'page.contractor'
assign menu = linklists.contractor-menu.links
else
assign menu = linklists[section.settings.main_menu]
endif
if menu.links.size != 0 assign render_menu = true endif
endif -%}
You need to add a new menu into the section using liquid schema, the same like the current one. and modify the code like below to use it.
{%- liquid
assign render_menu = false
if section.settings.main_menu != blank
if template contains 'contractor'
assign menu = linklists[section.settings.menuifromsechema] // need id of settings from schem tag
else
assign menu = linklists[section.settings.main_menu]
endif
if menu.links.size != 0
assign render_menu = true
endif
endif
-%}
December 30, 2023
Turbo Multi-language Translator
Make the better internet purchasing globaly
Turbosify SEO Speed Booster
5.0 (7)•Free plan available
Get better conversions by improving store loading speed
Installed
Turbo Multi-language Chat - AI Customer service in one hand
December 30, 2023