Skip to content

Updating to Venta Theme 1.6.4 (menu rework & CSP)

1.6.4 rebuilds the header and mega menu into a single template and moves the header and menu JavaScript into the theme bundle. It also completes CSP restrict-mode compatibility across many storefront templates and restructures product image sizing in view.xml.

Two things need manual action on an existing project: the new bundle scripts must be wired into your project theme, and any templates you override in the reworked areas must be re-based. This guide covers both, then the new configuration and the optional modules 1.6.4 adds.

Recommended reading:

Prerequisites

  • Project already on Venta Theme 1.6.3+ with the JS bundle configured in the project theme. If the bundle is not set up yet, do Updating to 1.6.3 first.
  • Node.js 20+.

What changed across the modules

PackageChange
magento2-venta-theme (1.6.4)Header and menu rebuilt as one topmenu.phtml; header and menu JS added to the bundle (js/bundle/header.js, js/bundle/menu.js); view.xml image roles restructured with per-breakpoint sizes.
magento2-venta-theme-module (1.6.4)CSP restrict-mode migration across cart, customer, catalog, product, wishlist, search and navigation templates; new theme config (menu depth, checkout footer, split image resizer, preload); deep-menu slice endpoint.
magento2-venta-theme-smile-elasticsuite-module (1.6.4)PLP fixes.
magento2-venta-theme-back-in-stock-module (1.0.7)Sized thumbnails on alert lists.

Two optional modules are introduced in this release. They are separate composer require installs, not part of the theme upgrade: PayPal Express and User Type Switcher.

Exact patch versions

The version numbers above are the 1.6.4 release line. The exact published patch versions (for example a 1.6.4.x fix release) are confirmed when the release is cut. Check the GitHub releases for each package before pinning.

1. Update Composer dependencies

json
{
  "require": {
    "magebitcom/magento2-venta-theme": "1.6.4",
    "magebitcom/magento2-venta-theme-module": "1.6.4",
    "magebitcom/magento2-venta-theme-smile-elasticsuite-module": "1.6.4",
    "magebitcom/magento2-venta-theme-back-in-stock-module": "1.0.7"
  }
}
bash
composer update \
  magebitcom/magento2-venta-theme \
  magebitcom/magento2-venta-theme-module \
  magebitcom/magento2-venta-theme-smile-elasticsuite-module \
  magebitcom/magento2-venta-theme-back-in-stock-module \
  --with-all-dependencies

2. Add the header and menu scripts to your bundle

1.6.4 moves the header and menu JavaScript into the bundle. Venta's own venta-bundle.js now imports two new files:

js
import './js/bundle/header.js';
import './js/bundle/menu.js';

Your project theme maintains its own venta-bundle.js (authored per theme, not inherited from vendor), so it does not pick these up automatically. Add the matching imports to app/design/frontend/<Vendor>/<ProjectTheme>/web/tailwind/venta-bundle.js:

js
import '../../../../../../../vendor/magebitcom/magento2-venta-theme/web/tailwind/js/bundle/header.js';
import '../../../../../../../vendor/magebitcom/magento2-venta-theme/web/tailwind/js/bundle/menu.js';

WARNING

If you skip this step, the header sticky-scroll behaviour and the entire menu (dropdowns and mobile drill-down) stop working, because their JavaScript is no longer loaded.

TIP

Child themes that extend your project theme (not Magebit/venta) need no change. Theme fallback serves the parent theme's built venta-bundle.min.js.

3. Review your template and view.xml overrides

1.6.4 changes many templates. Compare each file you override in app/design against the new version and re-base your changes. The File Review step applies as usual; the areas most likely to affect an existing project are:

  • Header and menu. The old topmenu_desktop and topmenu_mobile blocks are gone, folded into a single topmenu.phtml that serves desktop and mobile. If you override any header or menu template, re-base it onto the new combined structure.
  • CSP-migrated templates. Cart, customer and account, catalog and product, wishlist, mini-cart, search and navigation, and the contact and review forms were converted to registered inline scripts and Alpine.data components for CSP restrict mode. If you override any of these, apply the same pattern or your override will break under CSP.
  • view.xml image roles. Product image roles were restructured with per-breakpoint sizes and moved from the Magebit_ImageResizer block into a Magebit_VentaTheme block. If your theme overrides view.xml, reconcile the image roles.

4. Review the new configuration

1.6.4 adds theme configuration. Defaults keep existing behaviour, but review these after upgrading:

  • Menu Depth (magebit_theme/header/menu_depth, default 7). Caps how many category levels are reachable in the navigation. See Theme Configuration.
  • Image Resizer split. The single white-bars toggle became two: product gallery and product cards. The gallery toggle inherits your old value; the new product cards toggle defaults to off. See Background Adjustments.
  • Checkout Footer links (custom CMS block and Terms popup links). See Theme Configuration.
  • Preload section for global <link rel="preload"> hints. See Preload.

5. Rebuild and deploy

bash
bin/magento setup:upgrade
bin/magento setup:di:compile
bin/magento setup:static-content:deploy -f
bin/magento cache:flush
bash
cd app/design/frontend/<Vendor>/<ProjectTheme>/web/tailwind
npm ci
npm run build-prod

WARNING

The bundle reflects the module scripts on disk at build time. Rebuild (build-prod, or rebuild-js for JS only) after adding the header and menu imports, and whenever a module with venta-bundle/ scripts is installed or removed.

6. Optional new modules

These are opt-in and installed separately from the theme upgrade:

  • PayPal Express renders PayPal and Venmo express buttons on the cart, mini-cart, and checkout, with an optional one-click flow. Follow its Setup Guide.
  • User Type Switcher adds a Private / Business switcher with conditional company and VAT fields, and optional B2B tax handling. Disabled by default until enabled in its configuration.