# webrotate360/module-product-viewer-standard

> WebRotate 360 Product Viewer Standard Integration for Magento 2. This extension allows integrating embedded 360-degree or 3D product views into standard gallery on product pages in Magento 2. The product views can be created using our free publishing software available on webrotate360.com.

`composer require webrotate360/module-product-viewer-standard`

Canonical URL: https://packagento.com/webrotate360/module-product-viewer-standard

## At a glance

- **Vendor**: webrotate360 (https://packagento.com/webrotate360.md)
- **Latest version**: v1.6.0 — released 2025-04-05
- **Pricing**: Free
- **Package type**: Magento 2 module
- **Status**: active, accepting new buyers

## Installation

Packagento is licence-gated, so even free packages need a licence on a project before Composer can resolve them.

1. **Sign in or create an account** at https://packagento.com/customer/account/.

2. **Add the package to your account.** Open https://packagento.com/webrotate360/module-product-viewer-standard and complete the free checkout. A licence is minted automatically.

3. **Create or pick a project, then activate the licence on it.**
   - Projects represent the Magento installs you deploy to. Manage them at https://packagento.com/projects/.
   - Activate the new licence on the project you'll deploy this package to. Activation is what generates the Composer credentials scoped to that project.

4. **Add the project credentials to your Magento codebase.**

   Grab the project's public + private key from https://packagento.com/projects/ (open the project, then its Credentials tab), and add them to `auth.json`:

   ```json
   {
     "http-basic": {
       "packagento.com": {
         "username": "ppk_live_...",
         "password": "psk_live_..."
       }
     }
   }
   ```

   Add the Packagento Composer repository to `composer.json`:

   ```json
   {
     "repositories": [
       { "type": "composer", "url": "https://packagento.com" }
     ]
   }
   ```

5. **Install and apply.**

   ```bash
   composer require webrotate360/module-product-viewer-standard:*
   bin/magento setup:upgrade
   bin/magento setup:di:compile
   bin/magento cache:flush
   ```

## What it does

WebRotate 360 Product Viewer Standard Integration for Magento 2. This extension allows integrating embedded 360-degree or 3D product views into standard gallery on product pages in Magento 2. The product views can be created using our free publishing software available on webrotate360.com.

## README


WebRotate 360 Product Viewer Standard Integration for Magento 2 allows integrating embedded 360-degree or 3D product views into standard gallery on product pages in Magento 2. The product views can be created using our free publishing software available on [webrotate360.com](http://www.webrotate360.com/products/webrotate-360-product-viewer.aspx). 

Click this image to see a quick preview on YouTube: 

[![Click to see a quick preview](https://img.youtube.com/vi/XgEHlmGYQYw/0.jpg)](https://www.youtube.com/watch?v=XgEHlmGYQYw)

Note that a separate WebRotate 360 Ad-hoc integration is also [available](https://github.com/webrotate360/magento2-adhoc). 

### Demo

Click this link to see a demo M2 storefront, showing a configurable product with two simple products via Color attribute:

https://magento.360-product-views.com/cassius-sparring-tank.html


### About WebRotate 360

WebRotate 360 ® are developers of 3D components and solutions for interactive eCommerce, eLearning, and digital marketing.


### Requirements

This extension supports both Magento Community and Enterprise editions. M1 extension for previous releases is available on [here](https://www.webrotate360.com/products/cms-and-e-commerce-plugins/plugin-for-magento.aspx?section=Download).


### Install via Composer

Please backup your Magento setup before proceeding with the installation.

If you have Composer installed, run these Magento CLI commands from the root of your Magneto installation:
```shell
composer require webrotate360/module-product-viewer-standard
php bin/magento module:enable WebRotate360_ProductViewerStandard --clear-static-content 
php bin/magento setup:upgrade
php bin/magento cache:flush
```


### Install from GitHub

Please backup your Magento setup before proceeding with the installation.

Download zip package by clicking "Clone or Download" and selecting Download ZIP at the top of this page. 

 * Create an /app/code/WebRotate360/ProductViewerStandard directory in your Magento installation.
 * Extract the contents of magento2-standard-master from the zip and copy or upload everything to /app/code/WebRotate360/ProductViewerStandard
 * Run these commands via Magento CLI  to install and enable the module:
 
 ```shell
php bin/magento module:enable WebRotate360_ProductViewerStandard --clear-static-content  
php bin/magento setup:upgrade
php bin/magento cache:flush
```


### Configure and test

Select Stores > Configuration and expand WebRotate 360 Product Viewer > Standard in your Magento admin. 

* Set desired viewer skin and gallery slide position.
* Select a test product in Magento catalog and create a new product attribute (as a text field) with the attribute code set to webrotate_path.
* Enter this demo config URL (hosted via [PixRiot](https://www.webrotate360.com/services/pixriot.aspx)) in the attribute field for selected product and save and refresh Magento caches.

 ```shell
https://s1.pixriot.com/433181dfa6/CMS/Magento/Example/Example.xml
 ```
 
 
 Alternatively, copy "sampleshoe" folder that is installed with the plugin (under WebRotate360/ProductViewerStandard/view/frontend/web/360assets) to a folder in your Magento installation and update the attribute field accordingly, e.g: 
 ```shell
 /my-360-views/sampleshoe/config.xml
 ```


### Create your own views

Download [WebRotate 360 Product Viewer software](http://www.webrotate360.com/products/webrotate-360-product-viewer.aspx) (SpotEditor) and publish a 360 or a multi-row 3D product view using your images. You may use our sample images located under additional resources in the previous link.

FTP upload is available inside the software or you may upload everything manually via FileZilla or a similar client. Consider using our optimized [PixRiot](https://www.webrotate360.com/services/pixriot.aspx) service to host and manage your spins online for unmatched convenience. You only need to upload a single folder located under published/360_assets of your published SpotEditor project for each product view. You may also publish multiple product views into a single 'published' location on your hard-drive and upload all product views at once.

Note the URL of the configuration file (.xml) in the uploaded folder and enter a relative URL of the configuration file on your server in the new attribute field (webrotate_path) for selected products in the Catalog.


### CDN and 'master config' (PRO)

You can create an extra product attribute with the attribute code set to webrotate_root to allow specifying an alternative location of the images for each product. The root value is a URL (e.g http://mycdn.com/360_assets/product1/) that can point to a folder with images on an external server. When it's configured, the module will prepend the webrotate_root URL to the relative image path stored in the viewer configuration xml for each image. This is valuable when you need to host the assets on a dedicated file server or CDN.

This feature can be also used to load multiple product views via a single 'master' config xml that you can set under the plugin settings via Master Config URL. If Master Config URL is configured in the module settings, you don’t need to specify the webrotate_path attribute in the catalog for the products that share the same config , i.e you would only use the webrotate_root parameter, pointing to the image assets. Note that this will work as long a the number of images and their file names are the same across selected product views.

## Recent Versions

| Version | Released |
|---|---|
| v1.6.0 | 2025-04-05 |
| v1.5.2 | 2022-12-19 |
| v1.5.1 | 2022-12-13 |
| v1.5.0 | 2022-05-01 |
| v1.3.5 | 2021-05-25 |
| v1.3.4 | 2021-05-21 |
| v1.3.3 | 2021-05-21 |
| v1.3.2 | 2020-11-13 |
| v1.3.1 | 2020-06-07 |
| v1.3.0 | 2020-05-24 |

Showing 10 of 12 versions. Full release history on https://packagento.com/webrotate360/module-product-viewer-standard.

## Dependencies

### Require

| Package | Constraint |
|---|---|
| magento/framework | >=100.0.0 |

## Quality

Latest release (v1.6.0) fails the Packagento QA pipeline. Verdicts below are per-cell (Magento line × PHP version) for the matrixed tools, and run-once for the static / security tiers.


### Compatibility

Each Magento line is installed on its supported PHP versions, then the module is built (DI compile + static-content deploy). Cells show passed / failed / untested; staircase gaps render as `–`.

| Magento | PHP 8.2 | PHP 8.3 | PHP 8.4 | PHP 8.5 |
|---|---|---|---|---|
| 2.4.7 | Pass | Pass | – | – |
| 2.4.8 | – | Pass | Pass | – |
| 2.4.9 | – | – | Pass | Pass |


### Code Quality

Advisory checks against the module's source. Never affect the Compatibility verdict — a phpcs finding can't make a module incompatible.

#### Static Analysis

Coding standards (phpcs), mess detection (phpmd), copy-pasted code (cpd), PHP cross-version compatibility, composer.json validity. Each runs once for the whole module.

| Tool | Status | Findings | Summary |
|---|---|---|---|
| PHPCS | Warning | 13 | 13 warnings (ruleset: Magento2) — 1 auto-fixable with phpcbf |
| PHPMD | Pass | 0 |  |
| Cpd | Pass | 0 |  |
| Composer validate | Info | 1 | valid; 1 advisory note (composer validate --strict) |

#### PHPStan

Type-checks the module against a real Magento install. Re-runs per Magento + PHP version because resolvable symbols differ between releases.

| Magento | PHP 8.2 | PHP 8.3 | PHP 8.4 | PHP 8.5 |
|---|---|---|---|---|
| 2.4.7 | 6 | 6 | – | – |
| 2.4.8 | – | 6 | 6 | – |
| 2.4.9 | – | – | 6 | 6 |


### Tests

Unit and integration suites run per Magento + PHP cell. Test failures speak to the module's behaviour, not its compatibility with a line, so they're reported here separately.

#### Unit Tests

| Magento | PHP 8.2 | PHP 8.3 | PHP 8.4 | PHP 8.5 |
|---|---|---|---|---|
| 2.4.7 | N/A | N/A | – | – |
| 2.4.8 | – | N/A | N/A | – |
| 2.4.9 | – | – | N/A | N/A |

#### Integration Tests

| Magento | PHP 8.2 | PHP 8.3 | PHP 8.4 | PHP 8.5 |
|---|---|---|---|---|
| 2.4.7 | N/A | N/A | – | – |
| 2.4.8 | – | N/A | N/A | – |
| 2.4.9 | – | – | N/A | N/A |


### Security

Dependency-advisory audit (composer audit) plus a source malware scan. A malware detection fails the version outright.

| Tool | Status | Findings | Summary |
|---|---|---|---|
| Composer audit | Pass | 0 |  |
| Malware scan | Pass | 0 |  |

## Licence and pricing

Free. A licence is still minted on checkout and bound to your project for Composer access — no payment step.

Refundable within 14 days of first purchase via https://packagento.com/account/refunds/.

## Install via Claude Code or any MCP client

The Packagento MCP server can run the licence + project + Composer steps above in one tool call:

```
purchase_and_install_packages(
  composer_names=["webrotate360/module-product-viewer-standard"],
  project_id="proj_xxx"
)
```

This handles cart, checkout, licence minting, project activation, and writes auth.json credentials. Connect a client with `claude mcp add packagento https://mcp.packagento.com`. Full setup at https://packagento.com/docs/mcp-setup.

## Vendor

webrotate360 is a Magento 2 vendor on Packagento. See https://packagento.com/webrotate360.md for their full catalogue.

