WooCommerce
https://gitlab.com/kb/woocommerce
Icon:
<i class="fa fa-shopping-cart"></i>
Summary
Use the WooCommerce API to read product information and create a spreadsheet suitable for import into ManoMano.
The WooCommerce app is configured with a list of WooCommerce sites (
WooCommerceSite
).To access the WordPress API, WordPress - Development
Each WooCommerce site has a
select_class
which is used to select the product to include in the ManoMano spreadsheet (e.g.SelectAlphaOnly
andSelectMinimumValue
inwoocommerce_app.service.py
).
Configure
Warning
Some of the WooCommerce fields are read-only and cannot be
updated using the REST API e.g. products
, related_ids
.
For more information, see Product properties
Log into your WordPress / WooCommerce website.
Browse to Dashboard, WooCommerce, Settings, Advanced, REST API
Click Add key and create a Read only key (make a note of the key and the secret)
Add the key and secret to your
.private.fish
file e.g:set -x WOOCOMMERCE_SITE_1_API_KEY "ck_123" set -x WOOCOMMERCE_SITE_1_SECRET "cs_4567"
If you want to access the WordPress REST API (perhaps to upload images), then configure an Application Password for the WordPress API, WordPress - Development.
Add the
wordpress_application_password
to.private.fish
file e.g:set -x WOOCOMMERCE_SITE_1_WP_APP_PASS "wp-app-pass-89"
Create your WooCommerce sites e.g:
# example_woocommerce/management/commands/demo-data-woocommerce.py
django-admin demo-data-woocommerce
The user can update the title
, minimum_value
and percent_increase
via the dashboard.
Management Commands
Warning
Some of the WooCommerce fields are read-only and cannot be
updated using the REST API e.g. products
, related_ids
.
For more information, see Product properties
6245-product-export
to export all of the products from an existing
WooCommerce site:
# management/commands/6245-product-export.py
django-admin 6245-product-export www-hatherleigh-info
6245-product-extract-related-skus
to extract product related SKUs:
# woocommerce_app/management/commands/6245-product-extract-related-skus.py
django-admin 6245-product-extract-related-skus 2022-07-18-woocommerce-products-www-hatherleigh-info.json
In summary to transfer products from www-site-one
to www-site-two
:
# export products from site one
django-admin 6245-product-export www-site-one
# import products to site two
django-admin 6245-product-import www-site-two 2022-07-18-woocommerce-products-www-site-one.json
# extract related skus from site one
django-admin 6245-product-extract-related-skus 2022-07-18-woocommerce-products-www-site-two.json
# will create '2022-07-18-woocommerce-products-www-site-two-related-skus.json'
# export products from site two
django-admin 6245-product-export www-site-two
# will create '2022-07-18-woocommerce-products-www-site-two.json'
# update related skus for site one
django-admin 6245-product-update-related-skus www-site-two 2022-07-18-woocommerce-products-www-site-two.json 2022-07-18-woocommerce-products-www-site-one-related-skus.json