PS PrestaShop Beginner

Product Finder — Documentation

Install and configure the Product Finder: questionnaire builder, answer mapping, matching engine, front display and results page.

Updated Module version 1.0.0

The Product Finder module (dffinder) turns a complex catalog into a guided buying journey. You build a question tree in the back office; the visitor answers step by step and lands on a filtered product selection, just like an in-store sales advisor would deliver.

Overview

The module targets catalogs where customers hesitate: mattresses, bikes, IT hardware, cosmetics, spare parts. Each answer in the questionnaire is linked to one or more of your catalog criteria (attributes, features, categories, manufacturers, price ranges), and the module turns the visitor’s choices into a native product search.

  • Drag-and-drop question-tree builder, no code.
  • Single- or multiple-choice questions, multilingual titles and labels.
  • Real-time counter of matching products at every step.
  • Native results page (theme sorting and pagination) via ProductSearchProviderInterface.
  • Display as a home-page widget, widget tag or dedicated page.
  • Compatible with PrestaShop 8.0 to 9.x, multistore and multilingual.

Installation

  1. Go to Modules > Module Manager > Upload a module.
  2. Select the dffinder-1.0.0.zip archive and confirm the installation.
  3. The module creates its tables, a DF Product Finder admin tab and the rewritten routes product-finder and product-finder/results.

After installation, if the product-finder URLs don’t respond, regenerate the links: Advanced Parameters > Performance > Clear cache, then make sure Friendly URLs are enabled under Traffic & SEO.

Create your first finder

Open Modules > DF Product Finder and click Add a finder. Give it an internal name and an introduction text shown at the top of the questionnaire. The builder is organised in columns: questions on the left, the answers of each question, and the mappings of each answer.

Add questions

Click Add a question. For each question, set:

  • the title (e.g. “What will you use it for?”) and an optional help text;
  • the display type: single choice (one answer, with auto-advance) or multiple choice (several tickable answers);
  • the order, by dragging the question to the desired position.

Add answers

Under each question, add the answers offered to the visitor (e.g. “Sport”, “City”, “Kids”). Each answer has a multilingual label and can be reordered by drag-and-drop within its question.

Map answers to the catalog

This is the heart of the module: each answer points to one or more product criteria. The available mapping types are:

  • Attribute — a combination attribute value (size, colour…), matched against product combinations;
  • Feature — a product feature value;
  • Category — membership of a category;
  • Manufacturer — the product’s brand;
  • Price — a min/max range on the store base price.

The attribute, feature, category and manufacturer fields provide autocomplete: type a few letters to find the value. A single answer can combine several mappings (for example a category and a price range).

Price ranges filter on the product’s tax-excluded base price for the current store (product_shop.price). Taxes and specific prices (discounts, group prices) are not applied in this filter.

When your tree is ready, click Save. Saving is idempotent: the whole tree is rebuilt on every save, which guarantees a consistent state.

Understanding the matching engine

The module combines the visitor’s choices using two simple rules:

  • OR between the answers of the same question: ticking “Sport” and “City” widens the selection to products matching either one.
  • AND between questions: the criteria of each completed question stack to narrow the selection.

At every step, the module recomputes the number of matching products via AJAX and shows it to the visitor, which avoids reaching an empty selection.

Displaying the finder

Home-page widget

Enable the home-page display from the module configuration. The widget shows a call-to-action card leading to the questionnaire.

Widget tag

To insert the finder anywhere in one of your theme templates, use the Smarty tag:

{widget name='dffinder' id_finder=1}

Replace id_finder with the ID of the desired finder (visible in the back-office list).

Dedicated URLs

The questionnaire is also directly accessible via clean URLs, handy for your campaigns:

  • your-store/product-finder — the questionnaire;
  • your-store/product-finder/results?answers=1,4,9 — the results page.

The results page

At the end of the questionnaire, the visitor is directed to a results page that extends PrestaShop’s native listing controller. Concretely, you get without extra setup:

  • your theme’s product-list template;
  • sorting by date, price or name;
  • standard pagination.

A Restart link lets the visitor relaunch the questionnaire from the beginning.

Multistore and multilingual

The module is bound to the shop context: each finder belongs to the shop(s) of your choice. All texts (name, introduction, question titles, answer labels) can be entered per language thanks to the editing-language switcher at the top of the builder.

Troubleshooting

The counter always shows zero. Check that the mappings point to values actually used by your products (attribute/feature properly assigned to products), and that the products are active and associated with the current store.

The price range doesn’t filter as expected. Remember the filter applies to the tax-excluded base price, without specific prices. A product on sale is still filtered on its catalog price.

Best practice. Start with a general question (use, profile) then refine (budget, size). Keep each question to a few clear answers to maintain a smooth journey.

Was this page helpful?

Still stuck? Contact support