A customizable, open-source ecommerce platform built on WordPress. Build any commerce solution you can imagine.
Go to file
Nestor Soriano 9c6c0d73d8 Record attribute terms for product variations in wp_term_relationships.
Product attributes are currently recorded as terms in
wp_term_relationships (product attributes are actually taxonomies).
In the case of variable products this is true for the main product,
but not for the variations. The attributes used to define variations
are stored as post meta, but nothing is recorded in the term
relationships table.

This is a problem when using the layered nav filtering plugin,
since the attribute counters displayed are calculated based solely
on the contents of the term relationships table. Adding meta queries
would be really messy (especially when the widget is configured
with AND operator) and would probably also hurt performance.

This commit adds a change to store the attributes for variations
as term relationships, additionally to storing them as post meta.
Terms are stored on variation creation, and updated/deleted together
with the variation as appropriate. "Any" variations (stored in meta
as empty values) are not stored as terms.

Additionally, a database upgrade is included in order to backfill
terms for already existing products.
2020-07-28 08:55:55 +02:00
.github Merge pull request #26315 from woocommerce/add/nightly-builds-workflow 2020-07-01 14:38:01 -03:00
.wordpress-org Update screenshots 2019-04-24 12:27:53 -03:00
assets Merge pull request #26945 from woocommerce/fix/25233 2020-07-27 11:35:13 -03:00
bin Add message to GUI clients. 2020-07-14 12:53:22 +02:00
i18n Merge pull request #26894 from imwatsi/patch-1 2020-07-01 15:10:50 -03:00
includes Record attribute terms for product variations in wp_term_relationships. 2020-07-28 08:55:55 +02:00
packages Add note on unit tests 2019-06-26 15:17:52 +01:00
sample-data Update shopmanager display name 2019-01-16 16:01:39 +02:00
src Added JETPACK_AUTOLOAD_DEV flag to autoloader 2020-07-27 09:40:55 +02:00
templates Fix visibility of variable products with layered nav filtering. 2020-07-28 08:55:52 +02:00
tests Record attribute terms for product variations in wp_term_relationships. 2020-07-28 08:55:55 +02:00
.codeclimate.yml Remove references to apigen from configuration files 2019-06-28 10:20:30 -03:00
.codecov.yml Disable Codecov checks for each PR 2020-01-22 16:17:45 -03:00
.distignore Fixed paths in distignore 2020-06-02 19:44:35 -03:00
.editorconfig HTTPS for everybody 2016-05-26 22:48:49 -03:00
.eslintignore Ignore vendor files 2018-11-06 15:31:12 -05:00
.eslintrc.js change component name to e2e-environment 2020-04-30 14:01:42 -03:00
.gitattributes Merge pull request #25159 from woocommerce/ignore-bin 2019-12-03 15:30:01 -03:00
.gitignore Merge branch 'master' into add/npm-publish 2020-06-22 13:46:54 -03:00
.scrutinizer.yml Remove references to apigen from configuration files 2019-06-28 10:20:30 -03:00
.stylelintrc Updated .stylelintrc config 2018-11-19 19:08:08 -02:00
.travis.yml Merge pull request #26483 from szepeviktor/patch-1 2020-07-01 13:20:35 -03:00
CHANGELOG.txt Update versions and changelog from latest releases. 2020-07-09 13:18:51 +02:00
CODE_OF_CONDUCT.md Fixed a typo 2017-06-19 16:22:40 -03:00
Dockerfile Update wordpress Docker tag to v5.4.2 2020-06-23 12:40:48 +00:00
Gruntfile.js Removed the old way to run e2e tests. 2020-05-11 11:02:08 +02:00
README.md Proposed updated link to WooCommerce documentation 2020-05-11 07:13:46 +01:00
babel.config.js change component name to e2e-environment 2020-04-30 14:01:42 -03:00
composer.json Updated the REST API to 1.0.11 2020-07-27 09:40:55 +02:00
composer.lock Updated composer lock file 2020-07-27 09:40:55 +02:00
docker-compose.yaml use version of docker supported by trusty and newer 2020-05-11 22:58:45 -03:00
lerna.json add lerna 2020-05-08 13:53:39 -03:00
license.txt update license/readme URLs to HTTPS where appropriate 2019-05-16 09:32:06 -03:00
package-lock.json Merge pull request #26914 from woocommerce/renovate/lerna-monorepo 2020-07-14 13:05:47 +02:00
package.json Merge pull request #26914 from woocommerce/renovate/lerna-monorepo 2020-07-14 13:05:47 +02:00
phpcs.xml Changes in the overall organization of the dependency injection: 2020-07-24 09:23:01 +02:00
phpunit.xml Added dependency injection infrastructure for unit tests: 2020-07-24 09:23:05 +02:00
readme.txt Update versions and changelog from latest releases. 2020-07-09 13:18:51 +02:00
renovate.json Marked all of the feature plugin packages as ignored in the renovate config 2020-05-27 13:49:54 -07:00
uninstall.php Restored original behaviour of the constant. 2020-02-06 13:39:46 +01:00
webpack.config.js change component name to e2e-environment 2020-04-30 14:01:42 -03:00
woocommerce.php Some changes on the dependency injection engine based on feedback: 2020-07-24 09:23:05 +02:00

README.md

WooCommerce

license Latest Stable Version WordPress.org downloads WordPress.org rating Build Status Scrutinizer Code Quality codecov

Welcome to the WooCommerce repository on GitHub. Here you can browse the source, look at open issues and keep track of development. We recommend all developers to follow the WooCommerce development blog to stay up to date about everything happening in the project. You can also follow @DevelopWC on Twitter for the latest development updates.

If you are not a developer, please use the WooCommerce plugin page on WordPress.org.

Documentation

Reporting Security Issues

To disclose a security issue to our team, please submit a report via HackerOne here.

Support

This repository is not suitable for support. Please don't use our issue tracker for support requests, but for core WooCommerce issues only. Support can take place through the appropriate channels:

Support requests in issues on this repository will be closed on sight.

Contributing to WooCommerce

If you have a patch or have stumbled upon an issue with WooCommerce core, you can contribute this back to the code. Please read our contributor guidelines for more information how you can do this.