justbetter/laravel-magento-products

Package to store product data in a local DB

1.5.0 2024-09-10 06:45 UTC

This package is auto-updated.

Last update: 2024-12-10 07:23:04 UTC


README

Tests Analysis Total downloads

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.

Installation

Require this package:

composer require justbetter/laravel-magento-products

Add 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

Usage

Checking if a product exists in Magento

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.

Retrieving product data

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 ours in the config file For example:

$exists = app(\JustBetter\MagentoProducts\Contracts\RetrievesProductData::class)->retrieve('sku')

Events

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.

Quality

To ensure the quality of this package, run the following command:

composer quality

This will execute three tasks:

  1. Makes sure all tests are passed
  2. Checks for any issues using static code analysis
  3. Checks if the code is correctly formatted

Contributing

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

Credits

License

The MIT License (MIT). Please see License File for more information.