Download the PHP package creativestyle/magesuite-elasticsuite-virtual-category-indexer without Composer

On this page you can find all versions of the php package creativestyle/magesuite-elasticsuite-virtual-category-indexer. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package magesuite-elasticsuite-virtual-category-indexer

ElasticSuite Virtual Category Indexer

Configuration

To enable virtual category indexer or change a cron schedule go to: Store > Configuration > MageSuite > Virtual Category Indexer > General

CLI Commmand

Command Description
indexer:reindex elasticsuite_virtual_category_indexer Reindex all virtual categories. It reindex whole catalogsearch_category index
magesuite:elasticsuite:virtual-category-products-relations:reindex [-s, --strategy [STRATEGY]] [-c , --ids [CATEGORY IDS]] Reindex virtual categories with strategy (full, list, category)
magesuite:elasticsuite:virtual-category-products-relations:delete Cleanup/revert indexed virtual categories relations

Cron

Full reindexation is runing automaticaly by cron schedule.

Important module classes

Class Responsibility
MageSuite\ElasticsuiteVirtualCategoryIndexer\Model\Indexer\VirtualCategoryIndexer Insert product ids into the table catalog_category_product and refresh catalog and elasticsuite indexes
MageSuite\ElasticsuiteVirtualCategoryIndexer\Model\ElasticsuiteVirtualCategory\Model\Preview Allow to get raw data from from response from elasticsearch using getRawData() method
MageSuite\ElasticsuiteVirtualCategoryIndexer\Model\Catalog\ResourceModel\CategoryProduct Extension Class for Magento\Catalog\Model\ResourceModel\CategoryProduct. Allow to insert product ids for a virtual category into the table catalog_category_product and get theirs ids for other operations
MageSuite\ElasticsuiteVirtualCategoryIndexer\Model\ResourceModel\CategoryProductRelations Resource Model which provide the method to delete category ids from the table catalog_category_product.
MageSuite\ElasticsuiteVirtualCategoryIndexer\Plugin\Catalog\Category\ReindexOnChange Plugin which is call before runing the reindex method on category model and causes run virtual category indexer
MageSuite\ElasticsuiteVirtualCategoryIndexer\Plugin\ElasticsuiteVirtualCategory\Model\Rule\GetCategorySearchQuery Plugin which change value of is_virtual_category attribute to null . It force sending standard category request to elasticsearch instead of depends of the attribute value.

Extension attribute

Module provide the extension attribute virtual_query to modify request to elasticsaerch using the plugin. If it has true smile works standardly. False value remove virtual query request.

See: \Smile\ElasticsuiteVirtualCategory\Model\Rule::getCategorySearchQuery

EAV attribute

Module install a new category attribute virtual_category_reindex_required. If this attribute has value=1 smile works standardly.

Troubleshooting and todo in the future

When change root category of virtual category, previous products still are in the category

To remove product from categories run full reindexation.

After turn on module, virtual category does not display products anymore

If you see products on the preview in admin area:

it seems that ES is able to return the right product IDs in the indexer.

Make sure that the script provides the right category object here:

vendor/creativestyle/magesuite-elasticsuite-virtual-category-indexer/Model/Indexer/VirtualCategoryIndexer.php:150

should be the same as here:

vendor/creativestyle/magesuite-elasticsuite-virtual-category-indexer/Controller/Adminhtml/Category/Virtual/Preview.php:67


All versions of magesuite-elasticsuite-virtual-category-indexer with dependencies

PHP Build Version
Package Version
No informations.
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package creativestyle/magesuite-elasticsuite-virtual-category-indexer contains the following files

Loading the files please wait ....