Multi-sales-channel layouts
This is the recipe most users come to the plugin for. You have two sales channels — call them Sales Channel A and Sales Channel B — pointing at the same category tree, and you want each channel to have its own homepage, listing and product layouts.
This page is the end-to-end walkthrough. If you only want a 5-minute taste, see First layout replacement.
The mental model in one sentence
Section titled “The mental model in one sentence”Each category, product and landing page keeps one base layout assigned the normal Shopware way. The plugin replaces that base with an alternative when a per-sales-channel rule matches. You never duplicate the category tree, and a category never has two layouts.
Step 1: assign the Sales Channel A layouts as the base
Section titled “Step 1: assign the Sales Channel A layouts as the base”Treat Sales Channel A as the “default” channel. Assign every A layout directly to the matching category, product or landing page as you normally would in Shopware:
- Homepage category → [A] Homepage
- Listing categories → [A] Listing
- Default product page (Settings → Shopping Experiences → Default layouts → Product page) → [A] Product
These are the bases. The plugin will leave them alone on Sales Channel A (no rule matches) and replace them on Sales Channel B.
Step 2: create the [B] layouts
Section titled “Step 2: create the [B] layouts”Under Content → Shopping Experiences, create the alternative layouts for Sales Channel B:
- [B] Homepage — type Landing page (or Shop page, depending on your homepage type).
- [B] Listing — type Listing page.
- [B] Product — type Product page.
Save them. They are not yet attached to anything.
Step 3: create the rule
Section titled “Step 3: create the rule”Go to Settings → Rules → Create new rule. The recommended starting point is one rule that scopes purely on the sales channel:
- Name:
Sales Channel B - Conditions: a single condition — Sales Channel = is one of = pick Sales Channel B.
- Save.
That’s it. Don’t add Is homepage here — see the pitfall below.
Why a single rule per channel?
Section titled “Why a single rule per channel?”Because every layout AND-s its rules together (see Layout assignment modal), attaching the same “Sales Channel B” rule to all three B layouts is enough — the layout type itself decides which page kind it replaces, so you don’t need a separate “is homepage” / “is listing” condition in the rule.
Step 4: attach the rule to every [B] layout
Section titled “Step 4: attach the rule to every [B] layout”For each [B] layout from step 2:
- Open the layout in Shopping Experiences.
- Layout assignment in the right sidebar.
- Assign layout → Rules tab.
- Pick Sales Channel B.
- Confirm → Save the layout.
After this step, every B layout is a candidate replacement but only when the visitor is on Sales Channel B.
Step 5: configure the plugin
Section titled “Step 5: configure the plugin”Go to Settings → Extensions → Advanced Layouts Assigner.
Use the sales channel switcher at the top to set this per channel (or leave All sales channels for shared defaults). The conservative, recommended config:
Replacement mode
Section titled “Replacement mode”- Product page → All
- Category page → All
- Landing page → All
Replacement types
Section titled “Replacement types”The defaults seeded at install pair each kind with its own type. If the [B] Homepage layout is landingpage-type but it replaces a product_list (listing) base, you need to add landingpage to the Listing page row:
- Product page →
Product page(default) - Shop page →
Shop page(default) - Landing page →
Landing page(default) - Listing page →
Listing page+Landing page(add it)
Save.
Step 6: verify
Section titled “Step 6: verify”- Browse to Sales Channel A in an incognito window. Every category, product and landing page renders the A base layouts.
- Browse to Sales Channel B. Every category, product and landing page renders the B alternative.
Pitfall: combining Is homepage with Sales Channel
Section titled “Pitfall: combining Is homepage with Sales Channel”The single most common configuration mistake. If your rule looks like this:
AND container
- Is homepage = Yes
- Sales Channel = Sales Channel B
…the rule only matches when both are true — i.e. only on the homepage of Sales Channel B. On a listing or any other category page on B, Is homepage = No, so the rule does not match and the base A layout stays.
You have two ways out:
Option A — split into two rules
Section titled “Option A — split into two rules”- Rule “B Homepage”: AND container with
Is homepage = YesandSales Channel is one of Sales Channel B. Attach this rule to [B] Homepage. - Rule “B Listings”: just
Sales Channel is one of Sales Channel B(withoutIs homepage). Optionally addIs homepage = Noif you want to explicitly exclude the homepage. Attach this rule to [B] Listing and other non-homepage layouts.
Option B — single rule, no Is homepage
Section titled “Option B — single rule, no Is homepage”The simpler, recommended approach for most setups. Use one rule with only Sales Channel = Sales Channel B. Because every layout already has a CMS page type (landingpage, product_list, etc.), the plugin’s replacement types handle the “which page kind does this layout fit” question for you. Attach this single rule to every [B] layout. This is what step 3 above recommends.
When to add other conditions
Section titled “When to add other conditions”- Date range — to roll out a temporary look. Attach the rule with the date range only to layouts you want time-limited.
- Language / Currency — to vary by country within a single sales channel (e.g. the same store sells in EUR and CHF on two domains).
- Customer group — for a B2B layout. See B2B-specific layouts.
In every case, the underlying mechanic is the same: the rule narrows when the alternative layout is eligible; the plugin replaces the base when the rule matches.
Checklist
Section titled “Checklist”- Every category, product and landing page has a base layout assigned the normal Shopware way.
- The alternative layouts exist under Shopping Experiences with the right type.
- One rule per “axis” (per sales channel, per language, etc.) — preferably without
Is homepage. - The rule is attached to every alternative layout under Layout assignment → Rules tab.
- Replacement mode is All for the page kinds you want to swap (per sales channel).
- Replacement types lists the alternative’s type for the base’s row (per sales channel).
Related
Section titled “Related”- How it works — the mental model.
- Replacement modes and Replacement types — the two gates.
- Custom rule conditions — including
Is homepagesemantics. - Troubleshooting — when “it doesn’t work”.