DF Fitment Finder — Vehicle search and product compatibility
Install, configure and populate vehicle or device compatibility search on your PrestaShop store.
DF Fitment Finder adds compatibility search to your PrestaShop store: the customer picks their vehicle (or device) and the catalog only shows the products that fit. This documentation covers installation, configuration, filling the vehicle database and the front-office display.
Installation
- Go to Modules > Module Manager, then click Upload a module.
- Drop the
dffitmentfinder.zipfile and run the installation. - Click Configure to open the settings.
The installation creates three tables (vehicle database, product fitments, customer garages), registers the required hooks and adds a Vehicles tab under the Catalog menu. No core override is installed and no Composer dependency is required.
Compatible with PrestaShop 8.0 to 9.x, PHP 7.4 to 8.3, on single-store as well as multistore setups.
Configuration
Search levels
The selector is built on four levels: Make, Model, Year and Engine. The first two are always active; the last two can be switched on or off depending on your catalog.
- Use year: switch it off for a catalog with no notion of year (printer cartridges, phone cases, appliance parts).
- Use engine: switch it off if the finest level of your database is the model.
Searching remains possible as soon as make and model are filled in: the customer is never forced down to the finest level.
Level labels
Each level carries a label that is editable per language. Defaults: Make, Model, Year, Engine. Adapt them to your industry:
- Car parts: Make / Model / Year / Engine
- Printer cartridges: Brand / Series / — / Reference
- Phone cases: Brand / Model
- Home appliances: Manufacturer / Range / Year / Reference
Display zones
- Show in header: the selector appears at the top of every page.
- Show on homepage: the selector appears in the homepage content.
- Widget: place the selector anywhere in your theme with the Smarty tag
{widget name='dffitmentfinder'}.
Product page
- Fitment check: shows a banner under the price — green (the product fits the current vehicle), red (it does not) or neutral (no vehicle selected).
- Fitment chart: shows the complete list of compatible vehicles at the bottom of the page, grouped by make and collapsible.
Results per page
Number of products shown per page on the results page. Default: 12.
Filling the vehicle database
Manual entry
Go to Catalog > Vehicles. The Add button opens the vehicle form:
- Make and Model: required.
- Year from and Year to: optional. Left empty, the vehicle is treated as valid for every year. Filled in, they define a range: a 2012–2019 vehicle appears under each year of the range in the selector.
- Engine: optional, this is the finest level (for example “1.2 PureTech”).
- Active: an inactive vehicle no longer appears in the selector but keeps its fitments.
Attaching products to a vehicle
Once the vehicle is saved, a Compatible products panel appears at the bottom of its form. Type at least two characters (name or reference) in the search field, click a result, and the product is attached immediately. The optional Note field lets you narrow the scope of the fitment: “front axle only”, “manual gearbox”, “from chassis no. 12000″… The note is shown in the fitment chart on the product page.
CSV import
For large databases, the CSV import is the recommended route. The expected file has six columns:
make;model;year_from;year_to;variant;references
Example:
Peugeot;208;2012;2019;1.2 PureTech;BRK-P208-F|FLT-P208
Peugeot;208;2012;2019;1.6 BlueHDi;BRK-P208-F
HP;LaserJet Pro M404;;;;TNR-59A|TNR-59X
- The delimiter, semicolon or comma, is detected automatically.
- The references column holds the compatible product references, separated by a vertical bar.
- The year and engine columns may be left empty.
- A vehicle already present in the database is not duplicated: its fitments are simply completed.
- At the end of the import, a report shows how many vehicles were created, how many fitments were added and how many rows failed.
CSV export
The Export CSV button on the module configuration page downloads the whole database in the same format. Handy to rework the data in a spreadsheet and import it back.
The customer journey
Selecting a vehicle
The customer picks a make, then a model, then (if the levels are active) a year and an engine. Each dropdown is populated from the previous one, with no page reload. The Search button opens the results page, which displays the compatible products with your theme’s native miniatures.
The selected vehicle is then remembered and recalled on every page, until the customer changes it or clears it.
My Garage
The Add to my garage button saves the current vehicle. The My Garage page, reachable from the customer account, lists the saved vehicles and lets the customer:
- set a vehicle as the current vehicle;
- jump straight to the products compatible with a vehicle;
- remove a vehicle from the garage.
The garage also works for guest visitors: their vehicles are kept and attached to their account automatically as soon as they log in or create an account.
On the product page
If the fitment check is enabled and a current vehicle is selected, a banner appears under the price: green if the product fits, red otherwise. With no vehicle selected, a neutral message invites the customer to pick one.
If the fitment chart is enabled, the page shows the full list of compatible vehicles at the bottom, grouped by make and collapsible, with the note of each fitment when there is one.
Frequently asked questions
Can I use the module without any notion of vehicle?
Yes. Switch off the Year and Engine levels, rename the labels, and the module becomes a Brand / Series selector suited to cartridges, cases, appliance parts or any catalog where compatibility drives the purchase.
What happens to a fitment when I delete a product?
It is removed automatically. The database keeps no orphan rows.
Does the selector slow my site down?
No. The dropdowns are populated over AJAX on demand, in vanilla JavaScript with no jQuery dependency: only the list of makes is loaded on first render.
Is the module multistore-compatible?
Yes. Product fitments and customer garages respect the shop context.