WP Motors

WP Motors is a pre-owned vehicle dealership operating a high-traffic WordPress website powered by a live inventory that refreshes several times each day. Ruby Digital manages the platform end to end, covering server administration, performance optimisation and custom plugin development to keep listings accurate, vehicle images complete and the site responsive. Across multiple phases of work, the team resolved a series of connected reliability and performance challenges, including a persistent front-end issue affecting how imported vehicle images appeared in listing galleries.

Vehicle Gallery Issue Resolved

Complete image galleries now display correctly

No Repeat Firewall Outages

Cloudflare traffic permanently allowlisted

Reliable Vehicle Stock Imports

Imports run without cache or database bottlenecks

Brief & Objectives

WP Motors manages its live vehicle inventory through WP All Import Pro, with one critical scheduled job importing new listings and two additional jobs distributing stock data to external channels. The site is supported by Cloudflare APO and WP Rocket for caching, while Elementor Pro and JetEngine power the vehicle listing experience.

The objective was to keep a high-traffic, frequently updated inventory platform fast, secure and consistently available, without allowing the automation and caching layers that support performance to become sources of instability. The same standard applied to vehicle imagery: every listing needed to import and display its complete gallery, yet a persistent rendering issue meant live listings regularly appeared with one image missing.

Challenges

The central challenge was that several of the systems intended to improve performance and security had developed failure points of their own. Cache layers were being cleared more often than necessary, a growing database table was delaying stock imports, and automated firewall rules were blocking the Cloudflare network responsible for reaching the origin server.

These issues were difficult to detect during normal operation. They surfaced as intermittent outages, inconsistent import times and unexplained 521 errors, requiring the team to work from server logs and cron records rather than relying on front-end symptoms alone.

Key Problems Identified in Discovery

  • A completion hook running after every WP All Import job, causing routine export tasks to trigger full Cloudflare and WP Rocket cache purges.
  • An oversized AIOSEO cache table generating slow deletion queries on post save and delaying the vehicle import process.
  • An expired origin SSL certificate that could not renew because Cloudflare blocked the standard HTTP validation route.
  • Fail2ban rules blocking legitimate Cloudflare edge IP addresses, disconnecting the CDN from the origin server and causing a full site outage.
  • A vehicle listing widget requiring approximately 37 seconds to render on an uncached page and capable of occupying every available PHP worker.
  • Two plugins attempting to register the same background service during each WordPress load, filling the debug log and obscuring more significant errors.
  • A gallery component that displayed one fewer image than the number successfully imported into the listing’s image field.

Our Solutions

Ruby Digital’s web development team approached each issue as a diagnostics-led investigation. PHP-FPM slow logs, cron output and WP All Import history were used to identify the specific job, hook or query responsible before any changes were introduced. A full backup was also completed before database work that could affect live data.

The strategy centred on tighter control over when automated processes and security rules were allowed to act. Import hooks were restricted to the correct job ID, database maintenance was moved to a scheduled routine, and trusted Cloudflare infrastructure was permanently excluded from firewall bans.

Solutions Implemented in the Build:

  • Restricted cache purges to the primary vehicle import, preventing the two export jobs from clearing Cloudflare and WP Rocket.
  • Cleared the oversized AIOSEO cache table and introduced a daily maintenance task to prevent further build-up.
  • Moved SSL renewal to DNS-01 validation through Certbot’s Cloudflare integration, removing the dependency on the blocked HTTP challenge route.
  • Added Cloudflare’s published IP ranges to the server firewall’s permanent allowlist, protecting legitimate edge traffic from automated bans.
  • Profiled the vehicle listing widget and isolated dynamic tag processing and image lookups as the main sources of the rendering delay.
  • Traced the recurring debug entries to a plugin compatibility conflict and confirmed that they did not indicate a security breach.
  • Compared the gallery output with the custom image-sync process and identified an off-by-one counting issue.
  • Updated the synchronisation logic to add one additional gallery ID per vehicle without altering the imported images.
  • Validated the change against a sample of newly imported listings before applying it across the live inventory.

Fixing the Custom Image Import

  • Vehicle photographs are imported with each listing, matched to the relevant vehicle and written to the gallery field used on the front end.
  • The images were importing correctly, but the gallery component consistently displayed one fewer image than the field contained.
  • Our development team updated the custom synchronisation logic to include one additional gallery ID.
  • This compensates for the component’s counting behaviour and restores the complete image set without changing the source assets.

Results

Export jobs no longer trigger unnecessary cache purges, removing the main source of avoidable cache misses across the vehicle listing pages. The database bottleneck that delayed stock imports has been cleared, and SSL certificates can now renew through a validation route that is not blocked by Cloudflare.

The firewall-related outage has not recurred since Cloudflare’s published IP ranges were permanently allowlisted. Vehicle galleries now display the complete set of imported images, with the correction applied automatically during synchronisation so new listings publish accurately without manual checks or follow-up fixes.

Related Case Studies

WP Motors Omni-Channel

With more than 40 years of experience in the second-hand car market, WP Motors remains one of Cape Town's most trusted used car dealerships. We stock ...

Established South African Nutrition Brand

This South African health and nutrition company specialises in nutritionally complete meal replacement shakes, wellness supplements, and bundled nutri...

Inkserv SEO

Inkserv is a South African provider of professional minute-taking and transcription services, supporting corporate, legal, committee, and administrati...