Flooring Calculator for WooCommerce

Beschrijving

Flooring Calculator for WooCommerce rekent de oppervlakte die een klant nodig heeft om naar het aantal pakken, rollen, panelen, stuks of emmers dat je winkel verkoopt en toont de totaalprijs tijdens het typen. De plugin is gemaakt voor winkels die laminaat, vinyl, parket, tegels, ondervloer, lijmen, plinten en wandpanelen verkopen, waar klanten hun ruimte in vierkante meters kennen maar het product per pak wordt verkocht.

Geen berekenknop en geen formules om te schrijven: kies een hoeveelheidstype, vul de maat van één pak in, klaar. De berekening werkt in beide richtingen, dus als je het aantal pakken wijzigt, past ook de oppervlakte zich aan.

Kortom, een gratis maatprijscalculator gemaakt voor vloeren: een m2-calculator (m² naar pakken), een dooscalculator voor tegels, een rolcalculator voor ondervloeren en een verbruikscalculator voor lijm, alles in één plugin, terwijl de prijs per pak blijft zoals ingesteld in je winkel.

Zo werkt het

Een klant heeft 37,5 m² laminaat nodig. Eén pak bevat 1,74 m².

  • 37,5 m² ÷ 1,74 m² = 21,6, naar boven afgerond op 22 pakken, die 38,28 m² dekken.
  • Met 10 % snijverlies aangevinkt: 41,25 m² ÷ 1,74 m² = 23,7, naar boven afgerond op 24 pakken.
  • De totaalprijs wordt direct bijgewerkt, het winkelwagentje toont “Oppervlakte: 38,28 m²” naast de regel.

Dezelfde logica geldt voor de andere productgroepen:

  • Plinten: een ruimte van 5 × 4 m heeft een omtrek van 18 m, bij 2,40 m per plint zijn dat 8 plinten.
  • Lijm: 50 m² met 1 kg per m² in emmers van 25 kg is 2 emmers.
  • Ondervloerrollen en wandpanelen: oppervlakte gedeeld door de maat van één rol of paneel, naar boven afgerond.

Hoeveelheidstypen

Elk product krijgt één hoeveelheidstype. Het type bepaalt welke velden de klant ziet.

  • Vierkante meter / pakken: laminaat, vinyl, parket, tegels, tapijttegels
  • Vierkante meter / rollen: ondervloer, isolatie, rolgoederen
  • Vierkante meter / panelen: akoestische panelen en wandpanelen, maten per variatie mogelijk
  • Meter / stuks: plinten en profielen die per stuk met een vaste lengte worden verkocht
  • Meter: artikelen die per strekkende meter worden verkocht
  • Dekking / emmer: lijmen en plamuren, uit dekking in kg per m² en emmerinhoud
  • Stuks: het gewone WooCommerce hoeveelheidsveld

Voor wie is het

  • Vloerenwinkels: laminaat, vinyl en LVT, parket, linoleum, tapijttegels, kurk
  • Tegelwinkels die tegels per doos verkopen
  • Bouwmaterialenwinkels: ondervloer, isolatie, lijmen, plamuren, egaliseermiddel
  • Winkels die plinten, profielen, overgangsprofielen en wand- of akoestische panelen verkopen
  • Elke WooCommerce-winkel die per pak, rol, doos of emmer verkoopt terwijl klanten denken in vierkante meters of strekkende meters

Gebruikte formules

  • Pakken = oppervlakte ÷ maat per pak, naar boven afgerond
  • Met snijverlies = oppervlakte × (1 + snijverlies %) ÷ maat per pak, naar boven afgerond
  • Plinten = 2 × (lengte van de ruimte + breedte van de ruimte) ÷ lengte per plint, naar boven afgerond
  • Lijmemmers = oppervlakte × dekking in kg per m² ÷ emmerinhoud in kg, naar boven afgerond
  • Geleverde oppervlakte = pakken × maat per pak (getoond in het winkelwagentje en opgeslagen bij de bestelling)

Functies op de productpagina

  • Berekening in twee richtingen: voer de oppervlakte in voor het aantal pakken, of wijzig de pakken om te zien welke oppervlakte ze dekken
  • Altijd naar boven afgerond op hele pakken, rollen, panelen, stuks of emmers, zodat de klant nooit te weinig bestelt
  • De plus- en minknoppen in het oppervlakteveld gaan precies één pak per stap
  • Hint onder het hoeveelheidsveld, bijvoorbeeld “1 pak = 1,74 m²” of het benodigde lijmgewicht “Benodigd: 50 kg”
  • Selectievakje voor snijverlies, bijvoorbeeld “10% snijverlies toevoegen”, met een regel die de oppervlakte en pakken inclusief snijverlies toont
  • Ruimtecalculator: lengte × breedte voor vloeren en panelen, omtrek voor plinten, oppervlakte voor lijmen
  • Live totaalprijs inclusief btw; bij aanbiedingen ook het reguliere totaal en de besparing
  • Meldingen wanneer een minimale hoeveelheid geldt of wanneer de voorraad lager is dan de gevraagde hoeveelheid
  • Variabele producten: elke variatie kan een eigen maat per eenheid hebben, de calculator schakelt mee met de selectie
  • Prijstoevoeging per eenheid bij variaties, bijvoorbeeld “29,50 € / pak”
  • Artikelen per meter: een vaste opmerking zoals “Per meter verkocht. Lengte per stuk circa 2,40 tot 2,70 meter.”
  • De ingevoerde oppervlakte wordt tijdens het bezoek onthouden, zodat vloeren vergelijken of de bijpassende ondervloer en lijm toevoegen direct kan
  • Vooraf ingevulde velden worden bij het tikken geselecteerd, zodat typen de oude waarde vervangt
  • Mobielvriendelijk: de calculator schikt zich in één kolom met grote tikvlakken

Functies in winkelwagen, kassa en bestellingen

  • Geleverde oppervlakte, lengte of gewicht bij elke regel getoond, bijvoorbeeld “Oppervlakte: 38,28 m²” of “gelijk aan 77,00 kg”
  • Werkt in het klassieke winkelwagentje en de klassieke kassa en in het blokgebaseerde winkelwagentje en de blokgebaseerde kassa
  • De waarde wordt bij elke bestelregel opgeslagen, dus ze verschijnt in het bestelscherm, in bestelmails en op facturen
  • Voorraad in m² in plaats van in pakken, bijvoorbeeld “534,06 m² op voorraad” (optioneel)
  • Houdt rekening met minimale en maximale hoeveelheden en voorraadlimieten die WooCommerce of andere plugins instellen

Functies voor winkelbeheerders

  • Hoeveelheidstype, maat per eenheid en snijverliespercentage per product, in het paneel productgegevens
  • Snijverliespercentage per product, bijvoorbeeld 15 % voor visgraat en 5 % voor klikvinyl, met winkelstandaarden voor oppervlakteproducten en voor plinten
  • Kolom in de productlijst met type en maat, plus een filter “Maat per eenheid ontbreekt” om onvolledige producten te vinden
  • Snel bewerken en bulkbewerking voor hoeveelheidstype, maat per eenheid en snijverlies, voor honderden producten tegelijk
  • Instellingen: standaardwaarden voor snijverlies, totaalprijs aan of uit, voorraadweergave, opmerking voor artikelen per meter, beschikbare hoeveelheidstypen
  • Bestaande eigen velden uit een eerdere oplossing kunnen eenmalig met een filter worden gemigreerd
  • Bij verwijderen worden alleen de instellingen van de plugin gewist, productgegevens blijven behouden

Voor ontwikkelaars

  • Filters caqc_types (eigen hoeveelheidstypen), caqc_waste_percent (snijverlies per product of groep), caqc_stock_in_size (voorraadweergave) en caqc_migration_map (migratie van oude metasleutels)
  • Geen template-overrides: de calculator gebruikt de standaard hooks voor in winkelwagen plaatsen
  • Compatibel met High-Performance Order Storage (HPOS) en de blokken voor winkelwagen en kassa
  • PHP 7.4 tot 8.5, WordPress 6.5 of hoger, WooCommerce 8.0 of hoger
  • Klaar voor vertaling, Duits inbegrepen (formeel en informeel)

Werkt met je thema

De calculator gebruikt de standaard WooCommerce hooks voor in winkelwagen plaatsen en omhult het hoeveelheidsveld van het thema in plaats van het te vervangen, zodat de plus- en minknoppen van het thema blijven werken. Getest met Storefront en Woodmart, op desktop en mobiel.

Privacy

Geen externe verzoeken, geen tracking, geen opgeslagen persoonsgegevens. De ingevoerde oppervlakte blijft alleen voor het huidige bezoek in de sessieopslag van de browser. Er is geen Pro-versie en geen upsell.

Ondersteuning

Vragen en foutmeldingen zijn welkom in het supportforum op wordpress.org. Voor al het andere schrijf je naar flooring-calculator@cms-admins.de. Hulp bij de installatie en maatwerk voor WooCommerce-winkels: CMS ADMINS.

Disclaimer

De calculator geeft een schatting op basis van de maten, dekkingswaarden en snijverliespercentages die de winkel invoert. Winkeleigenaren zijn verantwoordelijk voor juiste productgegevens en prijzen en moeten klanten aanraden de hoeveelheden voor het leggen te controleren. De plugin wordt geleverd “as is”, zonder enige garantie, zoals bepaald in de GNU General Public License.

Handelsmerken

WooCommerce is een geregistreerd handelsmerk van Automattic Inc. Deze plugin is niet gelieerd aan of goedgekeurd door Automattic of WooCommerce.

Copyright

Copyright (C) 2026 Patrick Schlesinger, cms-admins.de. Uitgebracht onder de GNU General Public License v2 of later.

Schermafbeeldingen

Installatie

  1. Installeer en activeer WooCommerce.
  2. Installeer de plugin via Plugins, Nieuwe plugin, of upload het ZIP-bestand en activeer de plugin.
  3. Ga naar WooCommerce, Instellingen, Producten, Vloercalculator om de standaardwaarden voor snijverlies in te stellen en te kiezen welke hoeveelheidstypen je winkel gebruikt.
  4. Bewerk een product. Kies onder Productgegevens, Algemeen een hoeveelheidstype en vul de maat per eenheid in, bijvoorbeeld 2,13 voor een pak van 2,13 m².

Filter voor veel producten tegelijk de productlijst op hoeveelheidstype en gebruik bulkbewerking.

FAQ

Hoe verkoop ik vloeren per vierkante meter in WooCommerce?

Houd de prijs per pak aan en laat de klant vierkante meters invoeren. Zet het hoeveelheidstype van het product op “Vierkante meter / pakken” en vul de m² per pak in. De productpagina rekent de oppervlakte dan om naar pakken en toont de totaalprijs, en het winkelwagentje toont de geleverde oppervlakte.

Hoeveel pakken heb ik nodig voor mijn ruimte?

Pakken = oppervlakte van de ruimte ÷ m² per pak, naar boven afgerond op het volgende hele pak. Met snijverlies: oppervlakte van de ruimte × (1 + snijverliespercentage) ÷ m² per pak, naar boven afgerond. De plugin rekent dit live op de productpagina uit, inclusief een ruimtecalculator voor lengte × breedte.

Hoeveel snijverlies moet ik bij een vloer rekenen?

Dat hangt af van het product en het legpatroon. Gebruikelijke waarden zijn 5 % voor recht leggen van klikvinyl of laminaat en 10 tot 15 % voor diagonaal leggen, visgraat of tegels. Stel een winkelstandaard in en wijk per product af waar nodig.

Kan ik per product een ander snijverliespercentage instellen?

Ja. Elk product heeft een veld “Snijverlies (%)”. Laat het leeg voor de winkelstandaard, zet 0 om het selectievakje voor snijverlies bij dat product te verbergen. Met snel bewerken en bulkbewerking pas je het voor veel producten tegelijk aan.

Kan ik het gebruiken als tegelcalculator?

Ja. Tegels die per doos worden verkocht werken net als vloerpakken: vul de m² per doos in, de klant voert de wand- of vloeroppervlakte in en krijgt het aantal dozen, optioneel met een snijverlies voor zaagwerk.

Werkt het voor plinten?

Ja. De klant voert strekkende meters of de ruimtemaat in, de plugin berekent de omtrek en het aantal plinten. Plinten hebben een eigen standaardwaarde voor snijverlies.

Hoeveel lijm heb ik per vierkante meter nodig?

De plugin neemt de dekking in kg per m² van het product en de emmerinhoud, en berekent daarmee het benodigde gewicht en het aantal emmers. Geeft de fabrikant een bereik op, vul dan de bovengrens in, zodat de hoeveelheid zeker genoeg is.

Werkt het met het blok-winkelwagentje en de blok-kassa?

Ja. De oppervlakte, lengte of het gewicht verschijnt in het klassieke en in het blokgebaseerde winkelwagentje en de kassa en wordt bij elke bestelregel opgeslagen, dus ook in het bestelscherm en in de bestelmails.

Werkt het met variabele producten?

Ja. Variaties kunnen elk hun eigen maat per eenheid hebben, bijvoorbeeld plinten in lengtes van 2,40 m en 2,70 m.

Waarom toont een product geen calculator?

Of het hoeveelheidstype staat op Stuks, of de maat per eenheid ontbreekt. Bij lijmen zijn zowel de dekking als de emmerinhoud verplicht. In de productlijst vind je zulke producten met het filter “Maat per eenheid ontbreekt”.

Stuurt de plugin gegevens naar externe diensten?

Nee. De plugin doet geen externe verzoeken en slaat geen persoonsgegevens op.

Is er een Pro versie?

Nee. Alle functies zitten in deze plugin.

Kan ik een eigen hoeveelheidstype toevoegen?

Ja, via de filter caqc_types. Het snijverliespercentage pas je aan met de filter caqc_waste_percent, de voorraadweergave met caqc_stock_in_size.

Ik gebruikte eerder eigen velden voor de berekening. Kan ik die gegevens behouden?

Koppel je oude metasleutels aan de sleutels van de plugin met de filter caqc_migration_map. Bij de volgende activering hernoemt de plugin ze eenmalig. Zonder die filter gebeurt er niets.

Wat gebeurt er met mijn productgegevens als ik de plugin verwijder?

De plugin verwijdert alleen zijn eigen instellingen. Maten, snijverlieswaarden en hoeveelheidstypen blijven bij de producten, dus na een herinstallatie is alles weer terug.

Beoordelingen

Er zijn geen beoordelingen voor deze plugin.

Bijdragers & ontwikkelaars

“Flooring Calculator for WooCommerce” is open source software. De volgende personen hebben bijgedragen aan deze plugin.

Bijdragers

“Flooring Calculator for WooCommerce” is vertaald in 3 talen. Dank voor de vertalers voor hun bijdragen.

Vertaal “Flooring Calculator for WooCommerce” naar jouw taal.

Interesse in de ontwikkeling?

Bekijk de code, haal de SVN repository op, of abonneer je op het ontwikkellog via RSS.

Changelog

1.0.7

  • Variable products: the calculator, total price box and add to cart button line up when a product sample plugin adds margins to the variation form.

1.0.6

  • Goods sold by the meter: cart, order, emails and invoices show the ordered length, for example “Length: 6.00 m”.

1.0.5

  • Mobiel: de plus- en minknoppen van het oppervlakteveld en het aantalveld staan op één lijn.
  • Het totaalprijsblok en de winkelwagenknop schuiven niet meer opzij wanneer een plugin voor stalen marges aan het winkelwagenformulier toevoegt.

1.0.4

  • Snijverlies per product: elk product kan een eigen snijverliespercentage instellen, een leeg veld gebruikt de winkelstandaard.
  • Aparte standaardwaarde voor snijverlies bij plinten en artikelen per meter (standaard uit).
  • Artikelen per meter: selectievakje voor snijverlies in de ruimtecalculator.
  • Snel bewerken en bulkbewerking voor het snijverliespercentage.
  • De filter caqc_waste_percent ontvangt nu ook het product en de snijverliesgroep. Hij geldt niet meer voor lijm- en stuksproducten.
  • Lijm: als je het aantal emmers wijzigt, past de te lijmen oppervlakte zich aan.
  • Winkelwagen, kassa en bestelling tonen het totale gewicht voor lijmen.
  • Lay-out: calculator, totaalprijsvak en ruimtecalculator zien er in meer thema’s consistent uit, ook op mobiel en bij variabele producten.
  • Vooraf ingevulde velden worden bij het tikken geselecteerd, zodat typen de oude waarde vervangt.

1.0.3

  • De eenheid blijft achter het hoeveelheidsveld staan wanneer het thema het veld verplaatst (bijvoorbeeld Woodmart bij variabele producten).

1.0.2

  • Interne markering van opgeslagen bestelregels in het bestelscherm verborgen.

1.0.1

  • De oppervlakte of lengte wordt nu bij elke bestelregel opgeslagen, dus ze verschijnt in het bestelscherm, in de bestelmails naar de winkel en op facturen.

1.0.0

  • Eerste openbare release.