This package tracks if products exist in Magento by storing the status locally in the DB. We developed this to prevent multiple calls when multiple packages need to check product existence in Magento.
Require this package:
composer require justbetter/laravel-magento-productsAdd the following to your schedule to automatically search for products in Magento.
$schedule->command(\JustBetter\MagentoProducts\Commands\CheckKnownProductsExistenceCommand::class)->twiceDaily();
$schedule->command(\JustBetter\MagentoProducts\Commands\DiscoverMagentoProductsCommand::class)->daily();Important
This package requires Job Batching
You can use this package to determine if products exist in Magento. For example:
$exists = app(\JustBetter\MagentoProducts\Contracts\ChecksMagentoExistence::class)->exists('sku')If it does not exist the sku will still be stored in the database. The \JustBetter\MagentoProducts\Commands\CheckKnownProductsExistenceCommand command will automatically check these known products for existence.
You can use this package to retrieve product data. This data will be saved in the database and automatically retrieved when it is older than X hours. You can configure the amount of hours in the config file For example:
$exists = app(\JustBetter\MagentoProducts\Contracts\RetrievesProductData::class)->retrieve('sku')To prevent accidental deletion of products a safeguard is built in which prevents the deletion event firing if the number of products to be deleted exceeds the configured threshold.
This threshold can be configured in the configuration file and is in percentages. For example, a value of 0.1 (10%) will stop deletions if 11 products are deleted of 100 total.
When your application discovers new products in Magento you should dispatch one of the following events:
\JustBetter\MagentoProducts\Events\ProductDiscoveredEvent containing a single sku.
When a single product or multiple products appear in Magento, an event is dispatched:
\JustBetter\MagentoProducts\Events\ProductCreatedInMagentoEvent containing a single sku.
To ensure the quality of this package, run the following command:
composer qualityThis will execute three tasks:
- Makes sure all tests are passed
- Checks for any issues using static code analysis
- Checks if the code is correctly formatted
Please see CONTRIBUTING for details.
Please review our security policy on how to report security vulnerabilities.
The MIT License (MIT). Please see License File for more information.