- Loosened methods on
ProductVariant.php
tag so that they can be overwritten by extension. (#126)
- Fixed an issue with storefront_id, inventory_policy, and inventory_management being missing from variant (#122).
- Fixed an issue with the example js not invalidating carts if they were completed. (#123)
- Fixed admin dashboard no longer showing with new admin token update. Fixes #115. Fixes #118.
- Adds support for new apps generated via Shopify, these require the use of an Admin API Token rather than the Auth/Password combo. You can add this option by specifiying
SHOPIFY_ADMIN_TOKEN
in your.env
file.
- Fixed an issue with the localStorage values returning null on initial load of products. Please publish assets again. If you've modified the JS files, Please review PR #111 for changes you may need to make.
- Remove an issue with the
async
andawait
from the causing issues with the cart.
- Changed the way the checkout ID gets intitalised to prevent errors if the ID is cleared/not intialised properly. To get this change on an existing site, you'll need to update your JS or republish the JS. (See #103).
- Fixed an issue with the delete webhook not properly removing files. (See #104).
- Added the option to define a queue for the Shopify jobs. Defaults to
default
. If you'd like to set a unique process you can set a env variable ofSHOPIFY_JOB_QUEUE
. (See #95).
### New
- Potentially Breaking:: Now imports
inventory_management
option for each variant to check if the product is out of stock. This allows for sale of products which aren't out of stock and only denies if the "track inventory" option is checked within Shopify. If, it's unchecked the system will believe that there is either "unlimited stock" or "you have manually adjusted". (See #89)
### Fixed
- Out of stock flag in
product_variants
now works if stock is negative/0 rather than just 0 (#81)
### Fixed
- Removing debugs and dumps (#78)
### New
- Product variants that are out of stock are disabled by default in the option. You can manually control this by looping around variants and changing the output. (#70).
- Products imported which are drafts or unpublished, are no longer marked as published in Statamic and will be set to draft. (#75).
### Fixed
- Products assigned to more than 250 collections would overwrite on pagination.
- Smart collections now import alongside custom assigned collections. See #64.
### Fixed
- Removing some unnecessary fields on the variant fieldtype.
### New
- Allows the user to override the container/folder that the assets are uploaded to with
SHOPIFY_ASSET_CONTAINER
andSHOPIFY_ASSET_PATH
.
### Fixed
- Removing left over debug with
ray()
- Collections can now be imported (#24). Note: You'll need to publish the assets or create a new taxonomy for them in the admin panel. Once set up you can either run the 'Import All Products' again or you can use the new 'Import Collections' (
php artisan shopify:import:collections
).
- Adding
compare_at_price
for variants to check if on sale - you'll need to add this to your blueprint to be visible in the admin. #55
- Fixing variant
columns() null
error due to variant blueprint being hidden. #51 - Fixed ImportSingleProduct failing to find old variants and deleting them. #57
- Updates to docs. #52. #49.
- Fixing variants getting deleted each sync causing overwrite. #45
- You can now override the taxonomies used in the CMS.
- Fixing
ray()
debug left in ImportJob. #40
- ProductVariant tag has been updated to give you multiple ways to interact with them.
product_variant:generate
- outputs the html prerendered (default)product_variant:loop
- gives you access to variant data to use however you wish.product_variant:by_title
- lets you grab one variant by it's title.product_variant:by_index
- lets you grab one variant by index.
- InStock, ProductVariant, and ProductPrice tag updated so you no longer need to define
:product="slug"
each time. - Updated theme files to reflect the tag changes.
- [New] Adds ability to pull options names into an array field. (See Upgrade Guide). Ref #31.
- [Update] Default variant now has the title 'Default' for single products rather than 'Default Title'
- [Bug] Now removes old variants that are no longer present in Shopify. Fixes #32.
- [Bug] Additional fields are no longer being overwritten on Products. Fixes #30.
- [Bug] Fixes the way product tags/type/vendors import. No longer a mismatch.
- [Bug] Fixes variant data would be overwriten if extended.
If you want to display options/handle them on the site you need to update your Product.yaml
blueprint in resources/blueprints/collections/products
with the option field. Append the following. You're then free to hide it.
-
handle: options
field:
mode: dynamic
display: Options
type: array
icon: array
listable: hidden
- [New] All webhooks have been given a name.
- [New] Added a webhook for when a product is created in Shopify.
- [New] Added a webhook for when a product is updated in Shopify
these two webhooks if utilised, should mean you don't have to run full imports after the first one.
- [Fix] Incorrect name on Product Delete Webhook.
- [Update] Product delete webhook now has a new path. See potentially breaking below.
WebHook endpoint for Product Deletion has changed from /!/statamic-shopify/webhook/product-deletion
to /!/statamic-shopify/webhook/product/delete
- [Fix] Fixing error with
cart.js
when variants didn't have images.
- [Fix] Fixing error when no image is found for a product
- [New] Added lang array to config to overwrite some of the default text used in tags.
- [New] Added option to
product_variants
tag to show out of stock in the select. - [New] Appends
data-in-stock
to each option in the variant loop to show if in/out of stock.
- [New] Added
{{ in_stock :product="slug" }}
tag to check if a product is in stock. - [New] Pulls in
inventory_policy
from the Shopify API for variants (You will need to sync again). - [New] Displays out of stock on
{{ product_price }}
tag if policy exists and there is no stock. - [Update] Moved the Shopify Settings into Tools and branded it with the Shopify Bag icon.
- [Fix] Product Price tag had been accidently removed.
- [Fix] Fixing create new product in Statamic throwing error.
- [Fix] Styling on no variants found for products.
- [Fix] Invalid namespace on Variant Action
- [Fix] Fixing tag foreach on null
- [Fix] Fixing quick start link in placeholder
- Added a debounce handler and implemented around the cart quantity JS.
Public Release!
- Product Types renamed to Types
- Product Tags renamed to tags
product_variant
tag now acceptsshow_price="true"
rather thancurrency=""
- Massively cleaned up the default theme files.
### Other
- [New] Added
product_price
tag to show the price on the product overview page. - [New] Added trait to extend to check if has product variants.
- [New] You can now pass
class
to theproduct_variant
tag to style the select - [New] Config now has option for
currency
- defualts to £.
### Update
- Docs have been updated with more relevant information that hopefully clears a few things up.
- Removed the compile scripts as it didn't make sense.
- Added in a way to check for qty changes on the cart screen.
- Tag for loading product variants with default settings.
- JavaScript can now be included compiled (with theme) or modular for you to customise.
- Completely rewrote the front end JavaScript so it's modular and you can import it at your will. Publishes to
resources/js/vendor/shopify
. - Updated tag for loading in compiled js.
{{ shopify_scripts }}
- Service provider no longer publishes everything on install.
- Added trait for importing all products
- Added webhook for when a product is deleted
- Fixing large data set imports
- Initial Release