Skip to main content

Travall

Multilingual Drupal eCommerce site development, full data migration from the old site, AngularJS based vehicle selector, bespoke Storefeeder, Sage integration and more.

The Challenge

Travall are a company that sell vehicle accessories and the key requirement on this project was to create a multilingual eCommerce site that would work with multiple warehouses. Special consideration was given to how we best allowed users to locate products and how we could speed up page load times.

Because of the nature of the items that they sell it was necessary to create a dynamic search to allow users to find products that matched their vehicle. So some thought was needed to ensure that this worked in the way intended and most importantly that it was quick and easy to use. We also had to ensure that the new site fully integrated with Travall's backend systems!

An Elegant eCommerce Solution

Travall homepage
Travall cart page

eCommerce with Multi-Warehouse Support

This eCommerce site differed a little to most eCommerce sites that we build in that it had to support multiple distribution centres. The requirement was to determine where each product would be dispatched from based on the user's location. This wasn't just a case of meaning that we change where orders end up to be processed but we also needed to dynamically change things like stock information on the live site so that this was relevant to the warehouse that would be fulfilling the order.

As you would expect most of the basic eCommerce heavy listing was done for us using contributed modules; however, some bespoke code was needed to extend this to accommodate the extra requirements specific to this project. The end result is an eCommerce solution that changes based on where the user is. All stock data is kept up-to-date meaning that the eCommerce experience for the user is seamless no matter where they are!

Caching

In order to speed up page load times on this project we used Authcache to cache static content to reduce the number of DB request needing to be made when loading content - dramatically speeding up overall load times!
Once we had figured out the problems relating to the clients multiple distribution centres we had to give some thought to how end users would actually be able to find products that were relevant to them. Especially given the wide range of products the client sold.

At the heart of this functionality would be a dynamic search form which the end user would use to tell the site which vehicle they were trying to find accessories for. Some magic was required to get everything working nice and quickly.

Dynamic Search Form with AngularJS

The search form on this site allows users to dynamically drill down to products relevant to their vehicle. We use AngularJS to apply a MVC approach with the client side doing much of the heavy lifting to speed things up!