|
Some checks failed
Continuous Integration (Minimal) / Static checks (push) Has been cancelled
Continuous Integration (Minimal) / Javascript Tests (MySQL) (push) Has been cancelled
Continuous Integration (Minimal) / Tests (PostgreSQL) (push) Has been cancelled
Continuous Integration (Minimal) / Frontend (push) Has been cancelled
Continuous Integration (Minimal) / Packages (push) Has been cancelled
Continuous Integration (Minimal) / Tests (MariaDB) (push) Has been cancelled
Continuous Integration (Minimal) / Tests (MySQL) (push) Has been cancelled
| Q | A |-----------------|----- | Branch? | 2.2 | Bug fix? | yes | New feature? | no | BC breaks? | no | Deprecations? | no | Related tickets | https://github.com/Sylius/Sylius/issues/19013 | License | MIT ### Summary `GET /api/v2/shop/products/{code}` returned **404** for an `enabled` product whenever *all* of its associated products (across all its associations) were disabled. Root cause: `EnabledWithinProductAssociationExtension` applied `andWhere('product.associations IS EMPTY OR associatedProduct.id IS NOT NULL')` both in `applyToCollection` and `applyToItem`. For an item query, the OR collapsed to `false` whenever the product had associations but none of their associated products were enabled — excluding the product itself from the result. ### Fix Removed the `andWhere` from the extension. Eager-loading of enabled associated products (`LEFT JOIN ... WITH associatedProduct.enabled = true`) stays in place and mirrors the convention used by the neighbouring `EnabledVariantsExtension`. |
||
|---|---|---|
| .bunnyshell | ||
| .docker | ||
| .github | ||
| adr | ||
| bin | ||
| config | ||
| etc/build | ||
| features | ||
| public | ||
| src | ||
| templates | ||
| tests | ||
| translations | ||
| .babelrc | ||
| .dockerignore | ||
| .editorconfig | ||
| .env | ||
| .env.test | ||
| .env.test_cached | ||
| .env.test_cached_payum | ||
| .gitattributes | ||
| .gitignore | ||
| .npmignore | ||
| .readthedocs.yaml | ||
| AGENTS.md | ||
| behat.yml.dist | ||
| CHANGELOG-2.0.md | ||
| CHANGELOG-2.1.md | ||
| CHANGELOG-2.2.md | ||
| CLAUDE.md | ||
| composer-require-checker.json | ||
| composer.json | ||
| CONFLICTS.md | ||
| docker-compose.test.yml | ||
| docker-compose.yml | ||
| ecs.php | ||
| eslint.config.mjs | ||
| LICENSE | ||
| LICENSE_OF_TRADEMARK_AND_LOGO | ||
| Makefile | ||
| monorepo-builder.php | ||
| package.json | ||
| phparkitect.php | ||
| phpstan-baseline.neon | ||
| phpstan.neon.dist | ||
| phpunit.xml.dist | ||
| README.md | ||
| rector.php | ||
| RoboFile.php | ||
| SECURITY.md | ||
| symfony.lock | ||
| UPGRADE-2.0.md | ||
| UPGRADE-2.1.md | ||
| UPGRADE-2.2.md | ||
| UPGRADE-API-2.0.md | ||
| UPGRADE-API-2.1.md | ||
| UPGRADE-API-2.2.md | ||
| webpack.config.js | ||
Sylius is an Open Source eCommerce framework on top of Symfony.
The highest quality of code, strong testing culture, built-in Agile (BDD) workflow and exceptional flexibility make it the best solution for applications tailored to your business requirements. Powerful REST API allows for easy integrations and creating unique customer experience on any device.
We're using full-stack Behavior-Driven-Development, with PHPUnit and Behat.
Enjoy being an eCommerce Developer again!
⚙️ Installation
Install Sylius with Composer (see requirements details).
Follow the Getting started with Sylius tutorial!
📖 Documentation
Documentation is available at docs.sylius.com.
➕ Sylius Plus
Sylius Plus offers modular features like OnePageCheckout and a B2B suite, alongside advanced capabilities such as multi-store management, partial order fulfillment, smooth returns handling, a loyalty system and multi-source inventory. Pick and choose the modules you need to supercharge your eCommerce projects effortlessly.
🤝 Community
Get Sylius support on Slack or Stack Overflow or get professional SLA-backed support and Project Success Assistance with Sylius Plus license! Learn more.
Stay updated by following our Twitter and Facebook.
Would like to help us and build the most developer-friendly eCommerce framework? Start from reading our Contributing Guide!
👮 Security issues
If you think that you have found a security issue in Sylius, please do not use the issue tracker and do not post it publicly.
Instead, all security issues must be sent to security@sylius.com.
📦 Plugins and Extensions: Sylius Store
You can find Sylius plugins on our Sylius Store which is a Marketplace with Sylius extensions.
Or search for packages marked as sylius-plugin on Packagist.
📃 License
Sylius is completely free and released under the MIT License.
✍️ Authors
Sylius was originally created by Paweł Jędrzejewski.
Kudos to all Sylius contributors 🙏
... and others!
See the full list of contributors from our awesome community.





























































































