Contact Us

Ajax Cart. Free eCommerce php script.

Why is that so good?

  1. First is the speed. It's faster than Amazon.
  2. Next thing is Ajax - pages are loaded without reloading. Just content is loaded and no page refresh.
  3. Another good thing that all pages are clean URL even in the admin area.
  4. Fully and easy customizable. It’s plain and pure PHP. No 3rd party classes or frameworks – just PHP.
  5. Own templates engine similar to Smarty and well documented. It makes it very fast generated and also cached. Also easy to code with it saving time from writing PHP tags every time.
  6. Images are resized with ImageMagick(Photoshop 100% quality) and cached. All images auto-generation script included. Say product details has big images, products list has small images – it’s not only products, also all other images types.

 

What customers mostly need is in popups

  1. Product quicklook.
  2. View cart.
  3. Checkout.
  4. Login.
  5. Registration.
  6. My account with tabs.
  7. Wishlist

 

What features are here in the Customer area

  1. Homepage details with banners and testimonials. Homepage featured products, bestsellers, most viewed products, new arrivals. Category has featured products as well if defined.
  2. Products with quicklook, variants, options, wholesale prices, multiple images(Zoom preview effect), variant images. Options and variants modify price and weight. Social share links. Product details page tabs: description; related products; recommended products(random); send to friend.
  3. Categories, Brands, Blogs with moderated comments, Static Pages, Contact Us, Search products, News, Newsletter subscriptions.
  4. reCaptcha used to avoid guests to spam.
  5. Account details with orders history.
  6. Login, register, ajaxfied cart, ajaxfied checkout, ajaxfied profile, ajaxfied wishlist.
  7. Realtime cart and checkout calculations.
  8. Products pagination, sorting options.
  9. Email notifications for order, order status, new testimonial, new blog comment, contact us form, user registration.

 

What features are here in the Admin area

 

First is meta tags on all pages are customizable. Next is all pages has own configurable clean URLs. Another is that each feature has many other options. And the last one is the WYSIWYG editor to customize all descriptions.

  1. Dashboard is displaying main statistics of your sales, bestsellers and most viewed products
  2. Orders - search orders, see order details, change order status, print invoice.
  3. Discount coupons - most needed options are implemented.
  4. Users with country/state dynamic drop-downs. Create new user - set it customer or admin.
  5. Membership levels, if you don't use just have no membership levels defined.
  6. Products: all the needed details, images drag & drop, options, variants(you control which variants are exists or not), variant images, wholesale pricing, related products.
  7. Categories: unlimited subcategories levels, each category has own featured products, easy featured product selection, all needed category details, move category to another category/subcategory, category icon, category banners.
  8. Brands: All needed details with brand image(logo for example)
  9. Import/Export all catalog items
  10. Content: Blogs, testimonials, static pages, homepage(same as category page customizer)
  11. Shipping methods: offline shipping methods only supported for now. Realtime shipping methods module exists and need personal custom work. Shipping method can be as National(your country) and International(customer from another country)
  12. Shipping charges - you are free to set shipping charges for any destination zone and values per many different params.
  13. Payment methods: Stripe for credit cards and Paypal. Also offline payment methods
  14. Taxes - you are free to define taxes for any destination zone, membership level, set where tax will be applied. You can disable taxes if you don't use them. Also set tax name, for example "VAT".
  15. Destination zones - set zones by country, state, city, zipcode. City and zipcode support masks - just include '%' into string and it will mean that customer's city/zipcode should just include that value.
  16. Manage countries and states
  17. General settings, Company information, Blog settings
  18. Easy to translate by export/import language variables.

 

What is good on backend

  1. Own templates engine similar to Smarty but adapted even for Entry Level developer.
  2. Templates are multilingual - need little personal custom work, but for one language you can easy translate. They are stored in cache. JavaScript using {lng} tags as well and stored in cache as well.
  3. Easy only one settings.php file with development mode,
  4. In live mode(not development): JavaScript is obfuscated(it saves up to 90% of script size); CSS, HTML are in one line to save byte on line breaks.
  5. Images are resized with ImageMagick(Photoshop quality). Images are not displayed in full size - they are resized to the size of particular place where they are displayed. Resized images are cached and stored under the separate directory.
  6. Clean PHP core structure. No .php pages - just clean URLs. "index.php" processing all scripts and executed from .htaccess just from any URL.

 

Who made this E-Commerce CMS

  1. 11 years E-Commerce experience
  2. 8 years freelance. Around 200 successful projects
  3. Browse Upwork profile https://www.upwork.com/fl/ecommerce
  4. Author and owner of social network http://owohho.com (first project to create the core)

 

This is just a quick overview of Ajax Cart.

 

Thank you for reading this article. More things are to come.

 

Scripts structure

 

It has just few main folders

  1. Includes
  2. Pages
  3. Templates

 

All functions are with the includes/ folder.

 

All pages we see are in the pages/ folder. The file to process them is only one - index.php. It parse URL for example the /help url will load the pages/help.php script. So it makes all pages clean URLs.

 

Templates are grouped in the templates folder under folders same names as scripts under the pages/ folder.

 

Mobile version is very similar scripts under the templates/mobile/ folder.

Templages engine

Templates engine support PHP tags. Also it has own tags.

 

Supported tags are

 

a. Any template variable can be {$var} - it's like <?php echo $var; ?>. If it's array or object - use same way as PHP, for example {$var['var']}

 

b. 
{foreach $array as $k=>$v}

{/foreach}

 

will be

<?php 

foreach ($array as $k=>$v) {
}

?>

You still can insert {$v} tag

 

And so on. So instead of <?php CODE ?> you simple write {CODE}, similar what saves you time. Look below to learn more(no PHP tags in examples).
 

c. {if $tmp == '1' or $var == '2'} {/if}

 

will be

 

if ($tmp == '1' or $var == '2') {
}

 

Same is

{elseif [CODE]}

 

and

{else}

 

d.
{php $var = 1+2;}

It's just to wrap to the inside content.

 

e. {price $var}

It will ouput currency symbol and price with .00 at the end.

 

f. {weight $var}

It will ouput weight symbol and weight with .00 at the end.

 

g. {include="TEMPALTE PATH"}

 

for example {include="common/products.php"}

 

h. {lng[Hello world]} - language variable. Useful if you translate or use multi-lingual site.

All tags and {lng..} stored in cache and not processed on every page load.

{lng[Hello|lower]} - lowcase.
{lng[Hello|js]} - replace line breaks and " character with \".
{lng[Hello|escape]} - replace " character with \".

You can also use {lng} in JavaScript - they are processed as well. JavaScrpt already do all the work so it does not support additonal modifiers like "lower".

 

i. Easier than {php } for assignments
{assign $var=1+2}

 

Output
$var = 1+2;

 


 

Full templates engine is in the includes/func/func.core.php file

function get_template_contents

 

Easy to customize or add new template tags for even new developer.

Contact us Ajax Cart: First steps Copyright ©2016 - 2017 Developed by Oleg Khorev