Show shipping methods on product page
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Api
Block
Exception
Helper
Model
Plugin
Test/Unit
etc
view/frontend
.gitignore
LICENSE
README.md
composer.json
phpunit.xml.dist
registration.php

README.md

ProductShipping

Module is responsible for displaying available shipping methods for product view page using predefined country.

Requirements

  1. Magento 2.1+

Installation (using composer)

  1. composer require clawrock/m2-product-shipping
  2. php bin/magento setup:upgrade

Installation (manually)

  1. Clone the repository to app/code/ClawRock/ProductShipping
  2. php bin/magento setup:upgrade

Configuration

  1. Go to Stores -> Configuration -> ClawRock -> Product Shipping
  2. Select country which will be used to calculate available shipping methods, otherwise shipping methods won't be returned
  3. You can also edit message that will be displayed when API returns empty array (shipping methods not found)

API

You can get shipping methods for product using API request.

Endpoint: rest/V1/product-shipping-methods
Method: POST

Simple product

Body:

options: {
  "qty": 1,
  "sku": "S03"
}

Configurable product

Body:

options: {
  "super_attribute": {
    "142":"167",
    "93":"58"
  },
  "qty": 1,
  "sku": "WS03"
}

Keys in super_attribute array are super attribute ids, values are option ids, e.g. 142 is color attribute and 167 is red option.


Bundle product

Body:

options: {
  "bundle_option": {
    "1" : [3]
  },
  "bundle_option_qty": {
    "1": 5
  },
  "qty": 1,
  "sku": "24-WG080-1"
}

Keys in bundle_option array are option ids, values are selection ids. There might be several selections in one option i.e. multiple select, checkboxes. Keys in bundle_option_qty array are options ids, values are qty of options.

Tests

To run test run from console: vendor/phpunit/phpunit/phpunit -c phpunit.xml.dist