Release date: November 7th, 2017
Current version: 5.0.13
Change log

PrestaShop module

In the front office AJAX-ZOOM PrestaShop module is based on responsive mouseover zoom + optional 360°. In the back office there is a possibility for administrators to upload several 360's or import them from zip files, which were previously uploaded e.g. over ftp. Each individual 360° can be configured with separate AJAX-ZOOM settings and attached to a properties combinations same way it can be done with regular images on default.

For regular images there are no changes except that when the module is istalled the quality of the images is not reduces after upload any more.

  • Support for PrestaShop 1.7 is available now!
  • Added support for PHP 7.1 (PHP 5.2+ still supported)
  • Now with videos from YouTube, Vimeo, mp4...

General features

Back office screenshots

360 degree "Product Tour"

Hotspot editor 360 degree views

Hotspots on regular images

Starting from module version 1.7 you can also add hotspots to regular images, not just 360 spin views.

Videos - YouTube, Vimeo, mp4..

Front office screenshots

CMS Screenshots

Handling regular images

For the regular images there is no need to do anything. You can upload them as always. However depending on PrestaShop version the original uploaded images might be already compressed by PrestaShop image class. After activating AJAX-ZOOM this compression is disabled and if you are not satisfied with the quality you might want to reupload your high resolution images.

Staring from Module version 1.7 you can also add hotspots to regular images, not just 360 degree product views! The images are not changed and you can always edit, remove or just disable the hotspots.

Handling 360°/3D

To add 360° images go to 'CATALOG' -> 'Products' panel and select a product. There should be a new AJAX-ZOOM tab. In this tab you will be able to:



  1. Make sure your server and PrestaShop requirements are met!
  2. Unzip the folder 'ajaxzoom' from this archive to the '/modules/' directory of your PrestaShop installation.
  3. Download the latest version of AJAX-ZOOM from and unzip only 'axZm' folder into '/modules/ajaxzoom/' directory. This step is not required if you are using the module downloaded from our website but might be needed if after installation you will not find '/modules/ajaxzoom/axZm' directory (instant download might fail for various reasons).
  4. Set chmod for '/modules/ajaxzoom/pic' directory to be writeable by PHP.
  5. Activate the module through the 'Modules' menu in your PrestaShop back office panel.
  6. Click on "Configure" and save the settings with default values once.
  7. Installation is done. Now you can configure the module but it should work out of the box.
  8. In case it does not work as expected please read the instructions in the modules config page.
  9. Should you be not able to adjust AJAX-ZOOM to work perfectly in a theme on your own, please contact AJAX-ZOOM support.


"TECHNICAL ERROR" alert in back office

Mostly this errors result because of Cross-Origin policy of the browsers for AJAX requests. We should have fixed all the problems related to this issue by now, however if you have activated a redirect e.g. from to (without www) for frontend (or other way around), then please also login under into your backend (same as redirect for the frontend, so if in the front end you have redirect to, then please also login under in the back office). Same with protocols - http and https. If e.g. every request is redirected to https on frontend, then also please login to your backend over https.

Uploaded images are not shown

Please check that Ioncube Loaders are installed. If you have installed Ioncube Loaders over "local" php.ini file, placed in a directory, them copy the same file into, or create php.ini with something like zend_extension=/vrmd/webserver/php56/lib/, also into /modules/ajaxzoom/axZm/php.ini

RewriteBase (e.g. Bitnami / Prestashop / XAMPP)

Ver. 4.2.11+ if RewriteBase is set in .htaccess or app config file or similar you might need to change some settings in AJAX-ZOOM config file (/modules/ajaxzoom/axZm/ to make things work properly. Having tested AJAX-ZOOM extension on PC (localhost) with Prestashop package from "Bitnami" (default settings) we were able to get AJAX-ZOOM working under these conditions: the url path to Prestashop was, whereby the document root on PC was C:/xampp/apps/prestashop/htdocs and not C:/xampp/apps/prestashop/htdocs/prestashop as one would expect. This is due to RewriteBase which is enabled on default. Also the document root here changed from standard XAMPP root which is C:/xampp/htdocs; so as of now all these settings need to be set manually in /modules/ajaxzoom/axZm/ for AJAX-ZOOM this way:

product.tpl problems

In some themes in product.tpl the {if isset($HOOK_PRODUCT_FOOTER) && $HOOK_PRODUCT_FOOTER}{$HOOK_PRODUCT_FOOTER}{/if} might be missing or "hidden" inside a different "if" statement. This is not something we could do about over our module, so in case there are no JS errors and there are no changes on product detail page, please make sure that the above HOOK code is present and does not depend on any other conditions.

Uploaded images are compressed

Update: this issue seems to be fixed in AJAX-ZOOM module for Prestashop Ver. 1.1.3 Unlike other ecommerce software we know Prestashop compresses original uploaded images which reduces image quality. The solution to prevent this is to override "resize" method in "ImageManagerCore". The problem we did not solve yet is that overriding this method over our module causes incompatibility issues across different Prestashop versions, especially if developer mode is enabled. So if you want to prevent Prestashop to compress your originally uploaded images you can override the "resize" method on your own just about like this:

	public static function resize(
		$dst_width = null, 
		$dst_height = null, 
		$file_type = 'jpg', 
		$force_type = false, 
		&$error = 0
	) {
		if(Configuration::get('AZ_UPLOADNOCOMPRESS') == 'true' && $dst_width == null && $dst_height == null) {
			return copy($src_file, $dst_file);
		} else {
			return parent::resize(

The above code would work in 1.6.0.x versions. However e.g. in 1.5.x there is no $error argument. In Prestashop 1.6.1.x however there are many other arguments in "resize" method. Open /classes/ImageManager.php, find public static function resize( method and adjust the above code in your override according to the argumets present in this class. Make sure that the arguments in public static function resize( match the argumets in return parent::resize(

Some images in products show correctly, others do not (blank)

Update: this issue was fixed in AJAX-ZOOM Ver. 4.2.18; please update /modules/ajaxzoom/axZm folder!

In short: use only first option "Use JPEG" under PREFERENCES->Images as there are no better alternatives in Prestashop so far. If you encounter this issue on some products, you should set "Use JPEG" and reupload the images.

Prestashop saves all images uploaded by the admin as JPG even if they are PNG. On default (first option) which can be found at PREFERENCES->Images, the png images are converted to JPG which is somewhat acceptable, although not optimal (see issue above). Other than that there are two Prestashop "exclusive" options for handling images (at least we did not see it somewhere else used extensively). The second "Use PNG only if the base image is in PNG format" keeps png format only for images, which are in real PNG images but still saves them as JPG. The third and the last one "Use PNG for all images" converts all images into PNG but again, saves them as JPG in file system.

Most third party scripts which use GD get confused if PNG image is saved as JPG without converting it. It is also said in the Prestashop settings - "WARNING: This feature may not be compatible with your theme, or with some of your modules. In particular, PNG mode is not compatible with the Watermark module. If you encounter any issues, turn it off by selecting "Use JPEG"." So does AJAX-ZOOM at the moment gets confused if GD and not ImageMagick is used. ImageMagick has to be explicitly enabled for AJAX-ZOOM in config file and also installed on the server as it is mostly not included in standard server installations.


If you encounter any other troubles please report / contact our support. We will fix and document it with highest priority.

Download / Prices

Please note that you might need to download both: AJAX-ZOOM PrestaShop module and AJAX-ZOOM itself separately, see also installing section above.

Also there is no need to order AJAX-ZOOM before you have successfully installed and tested it!

The license price primarily depends on the number of different images, which are displayed on a domain in the AJAX-ZOOM viewer. For the complete license agreement, please visit the download section.


Ver. 1.7.0
  • Fixed bug not passing language variable in PS 1.7
  • Added possibility to add hotspots to regular images
  • Added possibility to define module settings for each product individually for testing purposes
  • Added collapsible tabs at product edit page with remembering the state
Ver. 1.6.0
  • Support for videos - YouTube, Vimeo, Dailymotion or link to mp4 videos located else where.
  • For variable products, you are able to associate videos only with certain product variations. Also you can, but not obligated to, define alternative video sources for shop languages...
  • Few other improvements in backend.
  • Tested with Prestashop 1.5, 1.6 and 1.7
Ver. 1.5.0
Added support for PHP 7.1 + small corrections.
Ver. 1.4.1
Small correction for uploading 360 images.
Ver. 1.4.0
Updated module settings. Also fixed a bug where individual settings for a 360 did not open in backend. This was due to PSR-2 coding style which caused JSON error.
Ver. 1.3.3
Fixed a bug for Prestashop 1.7 where the license data entered into module backend configuration were not read correctly.
Ver. 1.3.2
Small bugfix.
Ver. 1.3.1
Fixed loading correct images and 360 when calling a product variant directly for early 1.6 and 1.5 versions. Also converted to PSR-2-coding-style.
Ver. 1.2.20
The AJAX-ZOOM settings are not reset (set to defaults) when the module is uninstalled / installed or reset any more. Instead there is a button in module settings now which allows to reset to module defaults separately.
Ver. 1.2.19
Small bug correction.
Ver. 1.2.18
Small bug correction after update 1.2.17 which actually was a major update.
Ver. 1.2.17
Support for Prestashop 1.7; implemented new mouseover (version 5);
For update from previous versions - overwrite module files, update axZm directory, reset module in backoffice and save settings once. Clear template cache if needed.
Ver. 1.2.16
Fixed a bug where single quotes in Product title leaded to json parse error in JS.
Ver. 1.2.15
Fixed a bug where double quotes in Product title leaded to json parse error in JS.
Ver. 1.2.14
Fixed Product Tour which was broken in Ver. 1.2.12 and 1.2.13
Ver. 1.2.13
Couple changes to frontend template for SEO.
Ver. 1.2.12
Small corrections.
Ver. 1.2.11
Module now tries to download latest version of AJAX-ZOOM instantly.
Ver. 1.2.10
Fixed a possible warning when uploading 360 from a folder (not zip file); Hopefully fixed SSL issue forever.
Ver. 1.2.8
Added new hotspot editor. Updated 360 product tour editor.
Ver. 1.2.7
Fixed SSL issues at couple places
Ver. 1.2.6
Fixed a bug created in 1.2.5 (uploading 360 images from folder or zip)
Ver. 1.2.5
Added missing image labels / titles to mouseover zoom flyout window.
Ver. 1.2.4
Added copy & paste code for placing 360 player into CMS or landing pages. Here an example.
Ver. 1.2.3
Bugfixes saving 360 product tour.
Ver. 1.2.2
Minor improvements.
Ver. 1.2.1
Some corrections for 360 degree "Product Tour".
Ver. 1.2.0
Added 360 degree "Product Tour".
Ver. 1.1.6
Security improvements.
Ver. 1.1.5
Minor improvements.
Ver. 1.1.4
Fixed SSL issue.
Ver. 1.1.3
Fixed some compatibility issues.
Ver. 1.1.2
Temporaly remove override ImageManager.php from /modules/override/ImageManager.php till we have an universal solution for that as it caused problems across different Prestashop versions.
Ver. 1.1.1
Fixed paths for multishop
Ver. 1.1.0
Fixed several bugs
Ver. 1.0.2
Sorted options according to documentation; few bugfixes; new options; gallery slider vertical over options (left or right)
Ver. 1.0.1
PrestaShop module released

Comments (1)

Laura Daniela 2016-08-14 23:21:46
Laura Daniela Thanks, you are the best

Leave a Comment

Looking for a place to add a personal image? Visit to get Your own gravatar, a globally-recognized avatar. After you're all setup, your personal image will be attached every time you comment.

To use live-support-chat you will need to have Skype installed on your device.

In case live support over Skype is not immediately available please leave a message or send us an email over contact form at first.

Every AJAX-ZOOM related inquiry / question will be answered!