The essence of efficient work with the online store both on the side of the administrative back end and on the front page is simplicity and intuitiveness.
Users put a lot of emphasis on fast and efficient execution of the order process, the administrators appreciate the ease of editing all data regarding products, categories, additional fields, product combinations, system settings, uploading images and all daily activities related to store operation.
Webmasters will pay special attention to the possibilities of coding and personalization for the specific needs of their customers. In the summary below I’ve listed the most important functions of the VirtueMart and DJ-Catalog2 eCommerce components for Joomla CMS. It’s comparison of clean components, without any additional extensions.
|Feature||VirtueMart||DJ-Catalog2 eCommerce release|
|Products images||Uncomfortaimageding pictures (each file is loaded separately). Images should be optimized before adding them to the store||Easy loading of images using the multiupload function with the thumbnails generation (optimization) when adding files|
|Adding attachments||Unintuitive - attachments are issued on the same card as pictures, the role of the file should be determined before uploading. It is possible to upload one file at a time.||Intuitive loading of attachments on a separate card - in a form similar to loading images - multiupload|
|Extra fields||Fields that can be used in the product and delivery area. A limited list of field types||Fields possible to use in product areas, product inquiries. They can be visible in filters, search engine. Intuitive addition. Color type box - the ability to specify a color with a code or using a color picker, the ability to upload graphics files (eg with a non-uniform color of the product)|
|Adding extra fields||The need to choose from all fields defined in the system, which makes it very uncomfortable to use this feature with a large variety of products. Additional fields are used to version products. No possibility of filtering on the front.||Additional fields are gathered into groups, thanks to which we can rewrite the entire group of fields to a specific product in a single move, previously defining in groups a group of common features for products. Additional fields can be used in the filter module and in the search engine on the front page, which significantly facilitates searching for products by the user.|
|Product combinations||not available||A unique feature found only in the best store systems. Allows you to create combinations, of additional fields colors and sizes in an easy and intuitive way - for example, a red blouse in size XL.|
|Product description||Brief description of products in text form, a full description of the product in the HTML editor||Both fields are supported by the HTML editor|
|Location on the map||not available||The ability to locate an item, a product on the map. This feature is useful when the system is in catalog mode.|
|Individual settings||not available||Ability to change any available product display parameters on the front (product card). For example, you can individually determine whether a "ask for product" button should be displayed for a given product|
|Product category images||Interface for adding images analogous to products. It’s possible to add single images only.||The interface of adding the same as for products - multiupload|
|VAT rates||Any VAT rates||Any VAT rates|
|Stocktaking||available||The lack of a typical stocktaking function, but a stocktaking update can be carried out conveniently on one screen, without the need to edit each product separately.|
|Additional fields in the cart||not available||feature available|
|Additional fields in the product request form||not available||feature available|
|TAX Identification number validation||not available||Buyer's Tax Identification number (EU TAX Identification number) field. It is verified in the VIES database, thanks to which we reduce the risk of purchasing zero VAT rate by unauthorized persons|
|Payment processors||You can install any available payment processors. The standard is PayPal payment available||The following payment methods are available as standard: Paypal, Mollie, PayU, Przelewy24|
|Data import||not available||The feature is available. You can import categories with subcategories, manufacturers, products|
|Discount coupons||A simple system of discount coupons||An extensive discount coupon system that allows you to create codes for individual customers, for products, for categories, one-time use, percent and quota codes. The use of the code is reported in the order and displayed on the invoice.|
|Invoices||feature available||Automatically generated invoice after order payment|
|GDPR compliance||not available||Online store compatible with the GDPR|
|The purchase process||Unintuitive, not transparent. Only when you buy the Onepage Checkout extension makes the store more user-friendly||Intuitive, similar to most professional online stores, using customer preferences and habits|
|Store styling||Due to the structure inherited from the old versions of the component, VirtueMart styling can be very troublesome. It's often difficult to achieve the effect that the customer would like to have.||The transparent and comprehensible code for external programmers facilitates styling of the front of the component and enables to achieve the desired effects in a relatively short time.|
Most of the functions that are missing from VirtueMart can be supplemented by installing various plugins (including commercial ones). However, I am willing to bet with the reader of this article that similarly equipped (with the use of paid VirtueMart plugins) the free component will cost more than the DJ-Catalog2.
Besides that, by installing a large number of extensions from various providers, we risk inconsistent code and conflicts, a large amount of work on the implementation and problems while servicing the store on VirtueMart.
If you are interested in implementing an online store, I encourage you to read the documentation of the DJ-Catalog2 eCommerce release Joomla component.
see examples for the front page