Jump to content

Is it possible to create an advance eCommerce website?

Recommended Posts

Hi there community,


I'm new to this site. Basically I just discovered processwire. I was always a fan of Joomla but recently I came across a site which was designed by processwire. I looked at some of modules on processwire website but couldn't find the module I need.


I want to create a website that does the custom configuration of a product and provides product filtering.

Something similar to this site but not exactly the same.


Is there a module that can do that?


Basically the product configuration is done by checking the compatibility values between the categories, so the module need to support product tagging or some sort of value check to only display compatible products. 


Edited by kongondo
First post, suspicious link

Share this post

Link to post
Share on other sites

Hey Sam,

Welcome!  It's definitely possible to build something like that.  There's a few reasons why you didn't find an exact module for what you're trying to do.

ProcessWire is more of a development framework and toolset than a plug-and-play CMS.  It provides you easy access to a relational database, user and session management, querying, and front-end rendering through its API.  As that's the case, much of what you want to do – create product records with categories and tagging, and query those records with those fields – can be done pretty easily with native PW functionality.

A skeletal walk-through of how you might do this:

  1. Create a Product template in the admin.
  2. Create the fields you'd like for the Product – probably a Title, Body, Categories, and Tags.  The last two could either be hard-coded (as a Select – more rigid) or relational (as a Page Reference/PageArray, using other Pages as data – more flexible).
  3. Create Pages with the Product template, and populate the data.
  4. Create a Product front-end template, /site/templates/Product.php (file shares the same name as your admin template name), with code like this:
    <div class="body">
    <div class="categories">
      <?php foreach ($page->categories as $c): ?>
      	<?=$c->value?> <!-- This is assuming your Categories are a simple Option fieldtype, without titles. -->
      <?php endforeach ?>
    <div class="tags">
      <?php foreach ($page->tags as $c): ?>
      	<?=$c->title?> <!-- This is assuming your Tags are a Page Reference fieldtype. -->
      <?php endforeach ?>

  5. Edit your front-end home template, /site/templates/home.php, and list some of your Products, maybe like this:
    <ul>  <!-- List pages with Product template, limit results to 10 -->
      <?php foreach ($pages->find('template=Product, limit=10') as $p): ?>
        <a href="<?=$p->url?>">
    <?php endforeach ?>


That'll get you started with displaying and querying Pages.  You might want to take a look at this article to better understand how Templates, Fields, and Pages relate to each other.

E-commerce is one of the less well-represented areas of ProcessWire, but is 100% doable.  The main bits that don't exist out-of-box are a shopping cart, order management, and the checkout process, but could definitely be built using PW.  The module Padloper has both a cart and checkout process.  You could get something mostly self-contained like Stripe or Snipcart running within a PW install in short order.   Whatever the case, E-commerce in PW, and in fact most systems, will require some development and figuring out.  Hope that helps!

  • Like 7

Share this post

Link to post
Share on other sites

There exist two Pro modules which will help you to build this e-commerce website. Padloper (already mentioned) and Variations https://variations.kongondo.com (check the tutorial and the video)


Also there are two good reads on Snipcart, a tutorial and a case-study - a must read even if you plan to not use Snipcart:




Welcome to the forum @Samk80 and good day to you  ;)


  • Like 5
  • Thanks 1

Share this post

Link to post
Share on other sites

As evan mentioned above, ProcessWire lacks support of shop modules. I built 3 Shops with ProcessWire within the last year. The first one with the help of Padloper, the other two (b2b-shops) without Padloper. Take the time to write down evertything about the structure of your producst and then you can start developing your own very flexible solution for your customer. By the way, it's very easy to do complex imports (XML or JSON) and exports of products or orders (PDF - pages2pdf, XML, JSON) for other systems. So there is no need to manage the orders within ProcessWire. The import can be startet manually or via cron by night. But you can do this also... maybe not so shiny as in magento or shopware. In one solution the customer can put everything with an import into the shop and the orders run back via email into the system. The customer nearly never uses the backend.

  • Like 1

Share this post

Link to post
Share on other sites

Hey there @Samk80, Max from Snipcart here. Don't hesitate to ping us at geeks@snipcart.com should you decide to give our product a try! We'd be glad to help.

And a huge thanks to @evan & @flydev for mentioning Snipcart. Goes a long way! :rolleyes:

  • Like 4

Share this post

Link to post
Share on other sites
On 10/23/2017 at 11:05 PM, maxlab said:

Hey there @Samk80, Max from Snipcart here. Don't hesitate to ping us at geeks@snipcart.com should you decide to give our product a try! We'd be glad to help.

And a huge thanks to @evan & @flydev for mentioning Snipcart. Goes a long way! :rolleyes:

Hello @maxlab


I have an incoming project for an Online Store for Apparel ( E-commerce for clothings ). Only the preliminary discussion is going on with client as of now but I want to know whether its possible to create an online Apparel store with Processwire and Snipcart. Please consider the fact that I am from India, so let me know if there is any issue with Indian currency for payment.



Share this post

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By Marco Ro
      Hi everyone,
      a year ago we had put online a first version of our website, which didn't satisfy me much and had several bugs. This year I started working on a complete restyling, both in terms of functionality and graphic. I am very happy with the result obtained. Finally, last week we put this version online that I am proud to show you!
      Site EU: https://www.playwood.it/
      Site USA: https://www.us.playwood.it/
      It is an eCommerce for a small StartUp, the PlayWood, based in Reggio Emilia, Italy.
      The site is multilingual, has two areas of purchase and has two levels of registration. Redirectory based on the source IP for the USA customer and preferred language in the browser for the others countries. It has systems for use registration and sending emails dependent on specific actions, like: registration, purchase, request for quotes, information request, etc. Through the API the site communicates with external platforms such as the management software, Mailchimp and other systems to support marketing and company operations. 
      The site is constantly evolving, in the future we intend to add new features.
      The site was created with these modules:
      Padloper  Login/register Media Library ProCache PayPal Checkout Subscribe to Mailchimp Tracy Debugger Cookie Management Banner Continent and country names ImagePicker Field Map Marker External libraries:
      Spectre, scss framework Swiper slideshow verlok/lazyload fancybox
      Creating this site with ProcessWire represented a moment of strong professional growth. When I started I had little knowledge of some types of language, but Processwire and its APIs give me the ability to easily build pages, manipulate data and integrate any external library easily. Thus, I was able to deepen my knowledge more and more. So I wanted to thank the creators of the cms, who keeps it and who implements it, obviously all the people in the forum for the help they gave me, was very important.
      Thank you!


    • By benbyf
      Not new, but a website I've worked on for a year or so in continous development.
      I originally inherited the site from another web design company - upgraded PW and over the year added ecommerce using the Stripe module and a custom integration, revamped the frontend and added lots of new templates.
      Also did some frontend work on the shopify shop.

    • By kuba2
      I need to make a small, easy Webshop for a friend. He is selling 4 music albums.
      What would be the best way to go?
      Is there a sensible solution for a webshop within processwire? 
    • By prestoav
      Hi folks,
      I have a marketplace site built on PW which I'd like to tie to a subscription payment system for those selling. The user accounts currently use specific PW user accounts. I'm looking closely at PayWhirl to manage payments and subscriptions as it looks ideal for subscriptions. Their API seems to work well too from initial testing.
      I wondered if anyone else in this super forum had used PayWhirl and had any advice or tips & tricks?
    • By Kass
      Hi everyone,
      Does anyone know how I could insert an add-to-cart button (of a product from Prestashop) onto a Processwire page? The add-to-cart button should then lead the user to the checkout page of a Prestashop installation. The user should be able to select the product quantity before adding-to-cart. 
      I am aware of simplecart.js but I do not want to use it because of its security flaws which I've read about. I'm also aware of Padloper but it doesn't really suit my needs.
      I saw a thread about this topic posted in 2014 but it is a bit older now and provides no conclusive answer :
      Thanks for any help
  • Create New...