Skip to content
Mateusz Cieplak

WordPress · B2B packaging

Max-Pak

A B2B site for a packaging film distributor, on a custom theme and an in-house plugin

Max-Pak from Kielce has distributed packaging films, laminates, tapes and paper packaging since 2003. The new site runs on a custom WordPress theme with custom post types and ACF, and an in-house plugin handles quote requests, cookie consent and analytics. No page builder, no jQuery.

Role
WordPress developer: theme, content model, backend plugin and content migration
Period
Aug - Oct 2026
Stack
  • WordPress
  • PHP
  • Custom theme
  • ACF
  • Custom post types
  • Custom plugin
  • Vanilla JS
  • Consent Mode v2
  • GTM
  • GA4
  • Rank Math
  • LiteSpeed
Max-Pak: homepage on a desktop screen
Max-Pak on a phone
pages moved into structured content types
27
product and industry pages edited through ACF fields
12 + 12
film calculators linked to the quote form
3
301 redirects from the old addresses
28

Context

Max-Pak sells to manufacturers, so the site has one job: turn a visit into a quote request. There is no shop and no prices.

The old site repeated the same layout page by page. The 14 industry pages were 72-90% identical, so every change had to be made many times over.

What I did

  • A classic PHP theme without a build step: CSS on custom properties and vanilla JS for a keyboard-friendly mega menu, a mobile menu with a focus trap, header search and reduced-motion support
  • Two custom post types, offer and industry, and 6 ACF field groups defined in code, so the editor fills in data instead of building layouts
  • Migration scripts that moved 27 pages into the new content types and checked that no text was lost
  • Max-Pak Backend plugin: a 9-field quote form and a call-back form, validated on the server, with a honeypot, a time trap and a rate limit
  • A leads screen in the WordPress admin with statuses and CSV export
  • Cookie banner with Google Consent Mode v2 and a consent log that stores IP addresses only as salted hashes
  • GTM and GA4 with a generate_lead conversion on the thank-you page
  • 3 film calculators (shrink sleeve width, roll length from roll weight, stretch film per pallet) whose result can be attached to the quote request
  • JSON-LD for products, breadcrumbs, FAQs and the business, 28 redirects from old addresses, WebP images, a preloaded LCP image and self-hosted fonts

Hard parts and how I solved them

  1. Problem

    14 industry pages were 72-90% the same, so one change meant editing every page by hand.

    Solution

    An industry post type with ACF fields and a single template. Migration scripts moved the content over and checked it word for word.

  2. Problem

    If the mail server failed, a quote request sent from the form would be lost.

    Solution

    Every lead is saved to its own database table before the email goes out, and the team can see and export leads in the admin.

  3. Problem

    Analytics had to wait for consent without losing conversions from people who agreed.

    Solution

    Consent Mode v2 defaults to denied and is updated from the cookie before GTM loads. The plugin is the only place that adds the GTM container.

Results

  • 12 product pages and 12 industry pages managed in ACF fields instead of copied layouts
  • Quote requests are kept even when email delivery fails
  • Conversions tracked in line with each visitor's consent
  • Offers and industries included in the sitemap, with structured data on product pages

Screens

Swipe or use the buttons to browse the screens.

  • Homepage
    Desktop · Homepage
  • Homepage on a phone
    Phone · Homepage on a phone
  • Product range, built from the offer post type
    Desktop · Product range, built from the offer post type
  • Product page with a quote request
    Desktop · Product page with a quote request
  • Product page on a phone
    Phone · Product page on a phone
  • Industries, one template for every industry page
    Desktop · Industries, one template for every industry page
  • Film calculators
    Desktop · Film calculators
  • Film calculators on a phone
    Phone · Film calculators on a phone

Contact

Let's talk.

Looking for a frontend developer who can take a project all the way to production? Use the form or write to me directly.

kontakt@mateuszcieplak.com

Your details are used only to reply to you. The form is delivered by Web3Forms.

Get in touch