FN Shoppable Blocks user guide

FN Shoppable Blocks is a WordPress plugin that adds three WooCommerce blocks to the WordPress block editor: Shop the Look, Shop the Story, and Collection Switcher.

Before you begin

  • Install and activate WooCommerce.
  • Create and publish the products you want to feature.

Plugin installation

  1. In your WordPress admin, go to Plugins > Add Plugin.
  2. Click Upload Plugin and choose the FN Shoppable Blocks .zip file.
  3. Click Install Now, then Activate Plugin.
  4. Go to Settings > FN Shoppable License and activate your license key.
  5. Make sure WooCommerce is installed and active before adding FN Shoppable blocks to a page.

The blocks keep working on your site even if a license expires or cannot be checked. An active license is required to receive plugin updates.

Activate your license

After purchase, you can find your license key in your customer account. Open the Downloads tab, then select the purchased FN Shoppable Blocks product to view its license key.

To activate it:

  1. In your WordPress admin, go to Settings > FN Shoppable License.
  2. Paste your license key into the license field.
  3. Click the activation button and wait for WordPress to confirm the license is active.

An active license is required to receive plugin updates. If a license expires, is missing, or cannot be checked, the installed plugin and its existing blocks continue working on your site, but WordPress will not be able to download new FN Shoppable Blocks updates until an active license is connected.

For most page layouts, place each FN Shoppable block inside a separate Group block and set the Group to Full width. Apply the section’s background, padding, and margins to the outer Group rather than directly to the FN Shoppable block.

This creates a clear full-width page section while keeping the shoppable block’s content and spacing easier to manage. You can still use the block’s own alignment and spacing controls when a design needs more specific adjustments.

Inserting Shoppable Blocks

Add a block using either of these methods:

  • Open the block inserter and look in the FN Shoppable Blocks category.
  • Start a new line, type /, then begin typing the block name—for example, /Shop the Look—and select it from the suggestions.
  • Use the settings sidebar to configure the selected block. If the sidebar is hidden, select the block and click the Settings icon in the editor toolbar.

Products that are private, password protected, hidden from the catalog, or otherwise unavailable to shoppers are not displayed on the storefront.

Settings shared by every block

These standard WordPress controls are available on Shop the Look, Shop the Story, and Collection Switcher.

OptionChoicesWhat it does
AlignmentNone, Wide width, Full widthControls how wide the block appears. Wide and full alignment must be supported by the active theme.
MarginTheme spacing values or a custom valueAdds space outside the block. Available choices depend on the active theme.
PaddingTheme spacing values or a custom valueAdds space inside the block. Available choices depend on the active theme.

Shop the Look

Shop the Look places clickable product hotspots over a lifestyle image. A shopper can then open a product popup from each hotspot, and add product to cart/see product options.

Set up the block

  1. Add Shop the Look and choose a lifestyle image.
  2. Click the image wherever you want to add a hotspot.
  3. With the hotspot selected, search for and choose a WooCommerce product in the block settings sidebar (you may need to scroll down the sidebar to see the settings).
  4. Drag the hotspot to reposition it, or enter its horizontal and vertical position in the sidebar.
  5. Repeat for each product in the image.

A hotspot without a valid, shopper-visible product remains editable but is not shown on the storefront.

Image options

OptionChoices or rangeDefaultWhat it does
Replace imageAny image in the Media Library or a new uploadReplaces the lifestyle image while keeping the block’s other settings.
Alt textTextTaken from the selected imageDescribes the image for screen readers and when the image cannot load. Describe the scene rather than repeating nearby text.
Image fitContain, CoverContainContain shows the complete image. Cover fills the image area and may crop its edges.
Aspect ratioOriginal, Wide 16:9, Portrait 4:5, Square 1:1OriginalSets the shape of the image area. Original follows the source image’s natural proportions.
Minimum height0–900 px, in 10 px steps0Sets a minimum image-area height. Reset to 0 to use no custom minimum.
Focal pointVisual position pickerCentreChooses the part of the image that stays in view when Image fit is set to Cover. This option is hidden when Contain is selected.

Hotspot options

OptionChoices or rangeDefaultWhat it does
Button styleLight, DarkLightChanges the hotspot marker colour for contrast against the image.
Popup styleProduct card, MinimalProduct cardProduct card includes the product image, name, price, status, and action. Minimal removes the product image for a more compact popup.
Hotspot listSelect or RemoveLists every hotspot so it can be selected or removed without clicking it on the image.
WooCommerce productProduct searchNoneConnects the selected hotspot to a product.
Horizontal positionPercentage across the imageClick or drag positionFine-tunes the hotspot from left to right. The editor keeps markers away from the extreme image edge.
Vertical positionPercentage down the imageClick or drag positionFine-tunes the hotspot from top to bottom. The editor keeps markers away from the extreme image edge.
Remove hotspotPermanently removes the selected hotspot from the block.

The popup action follows WooCommerce product rules. Purchasable, in-stock products use their normal add-to-cart action. Unavailable or out-of-stock products link to the product page instead.

Shop the Story

Shop the Story combines editorial text, a lifestyle image, and up to four hand-picked products.

Set up the block

  1. Add Shop the Story and choose a lifestyle image.
  2. Replace the starter heading and paragraph with your story. The editorial area accepts Heading, Paragraph, and Buttons blocks.
  3. Choose up to four products in the Products panel.
  4. Choose the image position and product display style.

Image options

OptionChoicesDefaultWhat it does
Replace imageAny image in the Media Library or a new uploadReplaces the lifestyle image while preserving the story and selected products.
Alt textTextTaken from the selected imageDescribes the lifestyle image for screen readers and when the image cannot load.
Image positionRight, LeftRightPlaces the lifestyle image to the right or left of the editorial content and products.

Product options

OptionChoicesDefaultWhat it does
DisplayCarousel, GridCarouselShows products in a horizontally navigable carousel or a multi-item grid.
Carousel stylePeek, Single productPeekPeek reveals part of the next product as a browsing cue. Single product shows one product at a time. Available only when Display is Carousel.
Show add to cart buttonOn, OffOnShows or hides each product’s WooCommerce action button.
Product image aspect ratioOriginal, Square 1:1, Standard 4:3, Portrait 3:4, Classic 3:2, Classic Portrait 2:3, Wide 16:9, Tall 9:16OriginalSets a consistent crop for product images. Original preserves each source image’s proportions.
Product 1–4Product searchNoneSelects and orders up to four products. Empty product slots are ignored.

Product cards show the product image, name, price, availability status when needed, and the optional action button. Products appear in Product 1 to Product 4 order.

Collection Switcher

Collection Switcher creates tabs that let shoppers move between product categories, product tags, and automatic smart collections. The storefront displays the first eight collections in the configured list.

Set up the block

  1. Add Collection Switcher.
  2. Use Add collection to search for a product category or tag, or choose a smart collection.
  3. Edit each tab’s title if needed.
  4. Use Up and Down to set the tab order, or Remove to delete a tab.
  5. Configure the product grid in the Product display panel.

Collection options

OptionChoicesWhat it does
Add collectionProduct categories, product tags, New Arrivals, Bestsellers, On Sale, Featured, Top RatedAdds a new shopper-facing tab. A collection can be added only once to the same block.
TitleTextChanges the tab label without renaming the WooCommerce category or tag.
Up / DownMoves the collection earlier or later in the tab order.
RemoveRemoves the collection from this block. It does not delete the WooCommerce category, tag, or products.
Title alignmentLeft, Centre, RightAligns the tab labels. This control appears in the block toolbar. The default is Left.

Smart collections work as follows:

Smart collectionProducts shown
New ArrivalsMost recently published products first.
BestsellersMost popular products first, based on WooCommerce sales data.
On SaleProducts currently returned by WooCommerce as on sale.
FeaturedProducts marked as featured in WooCommerce.
Top RatedHighest-rated products first.

Product display options

OptionChoices or rangeDefaultWhat it does
Products per collection1–128Limits the number of products loaded for each tab.
Columns2–64Sets how many product cards appear in each row on larger screens. When a collection contains more products than the column count, shopper navigation controls are added.
Product image aspect ratioOriginal, Square 1:1, Standard 4:3, Portrait 3:4, Classic 3:2, Classic Portrait 2:3, Wide 16:9, Tall 9:16OriginalSets a consistent crop for product images. Original preserves each source image’s proportions.
Show add to cart buttonOn, OffOnShows or hides each product’s WooCommerce action button.
Default term order byNewest, Menu order, Popularity, Rating, Price, RandomNewestChooses how category, tag, On Sale, and Featured products are sorted. New Arrivals, Bestsellers, and Top Rated override this setting with the sorting implied by their names.
Default term orderDescending, AscendingDescendingSets the sort direction for category, tag, On Sale, and Featured products. New Arrivals, Bestsellers, and Top Rated override this setting.

Responsive behaviour

The blocks adapt their layouts for smaller screens. Column counts and wide/full alignment describe the preferred desktop layout; the plugin reduces or rearranges content where necessary so it remains usable on tablets and phones.

Customising with CSS

FN Shoppable Blocks is designed to inherit the active theme’s styles and typography wherever practical, so the blocks should feel at home in the site’s existing design without additional work. The plugin adds the layout and component styling needed for each shopping experience while allowing the theme to continue shaping familiar elements such as headings, text, and WooCommerce action buttons.

If a design needs further adjustment, FN Shoppable Blocks uses stable, prefixed CSS classes that can be customised with ordinary CSS. Add custom CSS to your theme’s stylesheet or the custom CSS area provided by your theme or site editor.

Customise one section

To change one instance without affecting every block on the site:

  1. Select the outer Group block recommended in Recommended section layout.
  2. Open Advanced in the settings sidebar.
  3. Enter a short class name in Additional CSS class(es), such as summer-edit.
  4. Begin each custom selector with .summer-edit.

For example:

.summer-edit .fnsb-collection-switcher__tab {
    color: #72513e;
}

Choose a meaningful class name containing only letters, numbers, hyphens, or underscores. Enter the class name without a leading full stop in the editor; use the full stop only when writing the CSS selector.

Stable block selectors

These root selectors target an entire block:

BlockSelector
Shop the Look.fnsb-shop-the-look
Shop the Story.fnsb-shop-the-story
Collection Switcher.fnsb-collection-switcher

These selectors target the principal shopper-facing elements. They are intended to remain stable so themes and site-specific CSS can rely on them.

ElementShop the LookShop the StoryCollection Switcher
Main image.fnsb-shop-the-look__image.fnsb-shop-the-story__image
Product card.fnsb-shop-the-look__product.fnsb-shop-the-story__product.fnsb-collection-switcher__product
Product image area.fnsb-shop-the-look__product-media.fnsb-shop-the-story__product-media.fnsb-collection-switcher__product-media
Product image.fnsb-shop-the-look__product-image.fnsb-shop-the-story__product-image.fnsb-collection-switcher__product-image
Product title.fnsb-shop-the-look__product-title.fnsb-shop-the-story__product-title.fnsb-collection-switcher__product-title
Product price.fnsb-shop-the-look__product-price.fnsb-shop-the-story__product-price.fnsb-collection-switcher__product-price
Product status.fnsb-shop-the-look__product-status.fnsb-shop-the-story__product-status.fnsb-collection-switcher__product-status
Product action.fnsb-shop-the-look__product-button.fnsb-shop-the-story__product-button.fnsb-collection-switcher__product-button

Additional component selectors:

ElementSelector
Shop the Look hotspot.fnsb-shop-the-look__hotspot-button
Shop the Look popup.fnsb-shop-the-look__product
Shop the Story editorial area.fnsb-shop-the-story__editorial
Shop the Story carousel arrows.fnsb-shop-the-story__carousel-button
Collection tabs container.fnsb-collection-switcher__tabs
Collection tab.fnsb-collection-switcher__tab
Active collection tab.fnsb-collection-switcher__tab.is-active
Collection products container.fnsb-collection-switcher__products
Collection slider arrows.fnsb-collection-switcher__slider-button

Common examples

Change product-title typography across all three blocks:

.fnsb-shop-the-look .fnsb-shop-the-look__product-title,
.fnsb-shop-the-story .fnsb-shop-the-story__product-title,
.fnsb-collection-switcher .fnsb-collection-switcher__product-title {
    font-family: var(--wp--preset--font-family--heading);
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.2;
}

Change product-price styling across all three blocks:

.fnsb-shop-the-look__product-price,
.fnsb-shop-the-story__product-price,
.fnsb-collection-switcher__product-price {
    color: #72513e;
    font-size: 1rem;
    opacity: 1;
}

Give one Shop the Look section a dark popup:

.summer-edit .fnsb-shop-the-look__product,
.summer-edit .fnsb-shop-the-look__product::before {
    background: #222;
    color: #fff;
}

.summer-edit .fnsb-shop-the-look__product-title a {
    color: inherit;
}

Change Collection Switcher tabs and distinguish the active tab:

.summer-edit .fnsb-collection-switcher__tab {
    color: #72513e;
    font-size: 1.4rem;
    opacity: 0.45;
}

.summer-edit .fnsb-collection-switcher__tab.is-active {
    color: #2e1d16;
    opacity: 1;
}

Change product action buttons in one Shop the Story section:

.summer-edit .fnsb-shop-the-story .fnsb-shop-the-story__product-button.wp-element-button {
    border-radius: 0;
    background: #2e1d16;
    color: #fff;
}

Custom CSS should normally be loaded after the plugin styles. Using a class on the outer Group, as shown above, also scopes the change and gives the custom selector enough specificity without resorting to !important.