Code Monkey home page Code Monkey logo

m2.smartcategory's Introduction

Magento2 Smart Category

Total Downloads Latest Stable Version

Extension Smart Category rules dynamically change the product selection according to a set of conditions (Similar Smart Playlists on iTunes).

You can create categories based on rules you specify, and then update these categories automatically as your products changes.

For example, you could create a category includes only new products. Or you could create a categories of products by a particular brand, color, size, etc. You can add as many conditions to the expression as needed to describe the products to include.

Category edit page

Magento2 Smart Category

Compatibility

Magento CE 2.1.x, 2.2.x, 2.3.x, 2.4.x

Install

To install the Smart Category, You must install kit of extensions:

  • Smart Category - base of Smart Categories functionality.
  • Smart Category Configurable - changes simple products to their parents for configurable products.

Install via Composer (recommend)

The corresponding version of the Smart Category Kit will be installed automatically.

  1. Go to Magento2 root folder

  2. Enter following commands to install module:

    For Magento CE 2.1.x

    composer require faonni/module-smart-category-kit:2.1.*

    For Magento CE 2.2.x

    composer require faonni/module-smart-category-kit:2.2.*

    For Magento CE 2.3.x

    composer require faonni/module-smart-category-kit:2.3.*

    For Magento CE 2.4.x

    composer require faonni/module-smart-category-kit:2.4.*

    Choose one based on your Magento version and wait while dependencies are updated.

Manual Installation

  1. Create a folder {Magento root}/app/code/Faonni/SmartCategory

  2. Download the corresponding latest version

  3. Copy the unzip content to the folder ({Magento root}/app/code/Faonni/SmartCategory)

  4. Install Smart Category Configurable

Completion of installation

  1. Go to Magento2 root folder

  2. Enter following commands:

    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy  (optional)

Configuration

In the Magento Admin Panel go to Stores > Product Attributes. Select any attribute that you’d like to be able to use by in the smart category conditions. On the edit attribute page, under Storefront Properties set Use for Smart Category Rule to Yes. Magento2 Use for Smart Category Rule Save the attribute.

Uninstall

This works only with modules defined as Composer packages.

Remove database data and schema

  1. Go to Magento2 root folder

  2. Enter following commands to remove database data and schema:

    php bin/magento module:uninstall -r Faonni_SmartCategoryKit Faonni_SmartCategoryConfigurable Faonni_SmartCategory

Remove Smart Category Kit

  1. Go to Magento2 root folder

  2. Enter following commands to remove:

    composer remove faonni/module-smart-category-kit

Completion of uninstall

  1. Go to Magento2 root folder

  2. Enter following commands:

    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento setup:static-content:deploy  (optional)

m2.smartcategory's People

Contributors

faonni avatar joost-florijn-kega avatar karliuka avatar rosenberger-e-conomix avatar yachyaroslav avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

m2.smartcategory's Issues

Manual install error on magento 2.2.6

Running php bin/magento setup:upgrade ends up in a table not found error:

Module 'Faonni_SmartCategoryConfigurable':
Upgrading schema... SQLSTATE[42S02]: Base table or view not found: 1146 Table 'central_m2live.faonni_smartcategory_rule' doesn't exist, query was: DESCRIBE `faonni_smartcategory_rule`

New product has multiple categories

New product has multiple categories and it tries to import from every category then I get error:
The value specified in the URL Key field would generate a URL that already exists.
To resolve this conflict, you can either change the value of the URL Key field (located in the Search Engine Optimization section) to a unique value, or change the Request Path fields in all locations listed below:
--urls--

Problem running indexer

when we run smartcategory_product indexer we get this error, anybody knows what problem this is? On magento 2.3. Categories are filled with products so that is working.

SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails (voetbalst_magento.catalog_category_product, CONSTRAINT CAT_CTGR_PRD_CTGR_ID_CAT_CTGR_ENTT_ENTT_ID FOREIGN KEY (category_id) REFERENCES catalog_category_entity (entity_id) ON DELETE), query was: INSERT INTO catalog_category_product (category_id,product_id,position) VALUES (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?)

Category Products index has been rebuilt successfully in 00:00:44

Replace on Configurable

This function does not work properly on magento 2.1.4 when having different sizes for one product, the function adds all the sizes to the category.

"Replace the associated products (Not Visible Individually) on corresponding configurable product"

But all associated products are added to the category in the admin.

Composer install error with magento 2.2.6

composer require faonni/module-smart-category-kit
Using version ^2.3 for faonni/module-smart-category-kit
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

Problem 1
- faonni/module-smart-category-kit 2.3.2 requires faonni/module-smart-category-configurable 2.3.* -> satisfiable by faonni/module-smart-category-configurable[2.3.0].
- Conclusion: don't install composer/composer 1.10.0-RC
- Conclusion: don't install composer/composer 1.9.3
- Conclusion: don't install composer/composer 1.9.2
- Conclusion: don't install composer/composer 1.9.1
- Conclusion: don't install composer/composer 1.9.0
- Conclusion: don't install composer/composer 1.8.6
- Conclusion: don't install composer/composer 1.8.5
- Conclusion: don't install composer/composer 1.8.4
- Conclusion: don't install composer/composer 1.8.3
- Conclusion: don't install composer/composer 1.8.2
- Conclusion: don't install composer/composer 1.8.1
- Conclusion: don't install composer/composer 1.8.0
- Conclusion: don't install composer/composer 1.7.3
- Conclusion: don't install composer/composer 1.7.2
- Conclusion: don't install composer/composer 1.7.1
- Conclusion: don't install composer/composer 1.7.0
- Conclusion: don't install composer/composer 1.7.0-RC
- Conclusion: don't install composer/composer 1.6.5
- Conclusion: don't install composer/composer 1.6.4
- Conclusion: don't install composer/composer 1.6.3
- Conclusion: don't install composer/composer 1.6.2
- Conclusion: don't install composer/composer 1.6.1
- Conclusion: don't install composer/composer 1.6.0
- Installation request for faonni/module-smart-category-kit ^2.3 -> satisfiable by faonni/module-smart-category-kit[2.3.2].
- Installation request for magento/product-community-edition 2.2.6 -> satisfiable by magento/product-community-edition[2.2.6].
- faonni/module-smart-category-configurable 2.3.0 requires magento/module-configurable-product 100.3.* -> satisfiable by magento/module-configurable-product[100.3.0, 100.3.1, 100.3.2, 100.3.3, 100.3.2-p2, 100.3.4].
- magento/module-configurable-product 100.3.0 requires magento/framework 102.0.* -> satisfiable by magento/framework[102.0.0, 102.0.1, 102.0.2, 102.0.3, 102.0.2-p2, 102.0.4, 102.0.3-p1].
- magento/module-configurable-product 100.3.1 requires magento/framework 102.0.* -> satisfiable by magento/framework[102.0.0, 102.0.1, 102.0.2, 102.0.3, 102.0.2-p2, 102.0.4, 102.0.3-p1].
- magento/module-configurable-product 100.3.2 requires magento/framework 102.0.* -> satisfiable by magento/framework[102.0.0, 102.0.1, 102.0.2, 102.0.3, 102.0.2-p2, 102.0.4, 102.0.3-p1].
- magento/module-configurable-product 100.3.3 requires magento/framework 102.0.* -> satisfiable by magento/framework[102.0.0, 102.0.1, 102.0.2, 102.0.3, 102.0.2-p2, 102.0.4, 102.0.3-p1].
- magento/module-configurable-product 100.3.2-p2 requires magento/framework 102.0.* -> satisfiable by magento/framework[102.0.0, 102.0.1, 102.0.2, 102.0.3, 102.0.2-p2, 102.0.4, 102.0.3-p1].
- magento/module-configurable-product 100.3.4 requires magento/framework 102.0.* -> satisfiable by magento/framework[102.0.0, 102.0.1, 102.0.2, 102.0.3, 102.0.2-p2, 102.0.4, 102.0.3-p1].
- magento/framework 102.0.0 requires composer/composer ^1.6 -> satisfiable by composer/composer[1.10.0-RC, 1.6.0, 1.6.0-RC, 1.6.1, 1.6.2, 1.6.3, 1.6.4, 1.6.5, 1.7.0, 1.7.0-RC, 1.7.1, 1.7.2, 1.7.3, 1.8.0, 1.8.1, 1.8.2, 1.8.3, 1.8.4, 1.8.5, 1.8.6, 1.9.0, 1.9.1, 1.9.2, 1.9.3].
- magento/framework 102.0.1 requires composer/composer ^1.6 -> satisfiable by composer/composer[1.10.0-RC, 1.6.0, 1.6.0-RC, 1.6.1, 1.6.2, 1.6.3, 1.6.4, 1.6.5, 1.7.0, 1.7.0-RC, 1.7.1, 1.7.2, 1.7.3, 1.8.0, 1.8.1, 1.8.2, 1.8.3, 1.8.4, 1.8.5, 1.8.6, 1.9.0, 1.9.1, 1.9.2, 1.9.3].
- magento/framework 102.0.2 requires composer/composer ^1.6 -> satisfiable by composer/composer[1.10.0-RC, 1.6.0, 1.6.0-RC, 1.6.1, 1.6.2, 1.6.3, 1.6.4, 1.6.5, 1.7.0, 1.7.0-RC, 1.7.1, 1.7.2, 1.7.3, 1.8.0, 1.8.1, 1.8.2, 1.8.3, 1.8.4, 1.8.5, 1.8.6, 1.9.0, 1.9.1, 1.9.2, 1.9.3].
- magento/framework 102.0.3 requires composer/composer ^1.6 -> satisfiable by composer/composer[1.10.0-RC, 1.6.0, 1.6.0-RC, 1.6.1, 1.6.2, 1.6.3, 1.6.4, 1.6.5, 1.7.0, 1.7.0-RC, 1.7.1, 1.7.2, 1.7.3, 1.8.0, 1.8.1, 1.8.2, 1.8.3, 1.8.4, 1.8.5, 1.8.6, 1.9.0, 1.9.1, 1.9.2, 1.9.3].
- magento/framework 102.0.2-p2 requires composer/composer ^1.6 -> satisfiable by composer/composer[1.10.0-RC, 1.6.0, 1.6.0-RC, 1.6.1, 1.6.2, 1.6.3, 1.6.4, 1.6.5, 1.7.0, 1.7.0-RC, 1.7.1, 1.7.2, 1.7.3, 1.8.0, 1.8.1, 1.8.2, 1.8.3, 1.8.4, 1.8.5, 1.8.6, 1.9.0, 1.9.1, 1.9.2, 1.9.3].
- magento/framework 102.0.4 requires composer/composer ^1.6 -> satisfiable by composer/composer[1.10.0-RC, 1.6.0, 1.6.0-RC, 1.6.1, 1.6.2, 1.6.3, 1.6.4, 1.6.5, 1.7.0, 1.7.0-RC, 1.7.1, 1.7.2, 1.7.3, 1.8.0, 1.8.1, 1.8.2, 1.8.3, 1.8.4, 1.8.5, 1.8.6, 1.9.0, 1.9.1, 1.9.2, 1.9.3].
- magento/framework 102.0.3-p1 requires composer/composer ^1.6 -> satisfiable by composer/composer[1.10.0-RC, 1.6.0, 1.6.0-RC, 1.6.1, 1.6.2, 1.6.3, 1.6.4, 1.6.5, 1.7.0, 1.7.0-RC, 1.7.1, 1.7.2, 1.7.3, 1.8.0, 1.8.1, 1.8.2, 1.8.3, 1.8.4, 1.8.5, 1.8.6, 1.9.0, 1.9.1, 1.9.2, 1.9.3].
- Conclusion: don't install composer/composer 1.6.0-RC

Catalog price rules

Does it work with catalog price rules?

We want to create a SALE category and add all products that are discounted using "price rules" NOT special price.

Thank you.

Missing Yes/No Type Product Attribute Values

Steps to reproduce:

  1. Add Yes/No Type Product Attribute
  2. Use for Smart Category Rule
  3. Edit Category -> Smart category conditions -> Select newly created attribute. Here the select options (Yes,No) are missing.

image

Tested on Magento 2.4.2

Magento 2.1.2 rule doesn't include the configurable

Hi @karliuka,

I tried your module and in the backend it works great. Tested it with magento 2.1.2 with sample data and filled a categorie with only Red items:

screen shot 2017-01-11 at 11 55 30

Then I saved the category, cleared cache and run the indexers, but no products show up:
screen shot 2017-01-11 at 11 55 55

What happens it that my rule only selects the simple products of the configurable. Is there a way to include the configurable?

Option to manual add products

Hi,

Maybe you can add a function so we can add products by conditions AND manual add products. And then when changing the conditions rule the manual products stay in place. Maybe you can make a overview in the category section were you see, products by rule and products manual

Indexes always in backlog

Hi,
I have a problem with smartcategory_product indexer. I need to sync a lot of products from a PIM to Magento. During the sync I see that the smartcategory_product indexer go in stuck and the smartcategories doesn't work properly (some products don't show in the smart category). If I disable the module, all work properly. I see also that this problem maybe is caused when I have a too nested categories. The structure of my categories is the following:

  • Master catalog
    • Woman
      • Bags
        • Handbags
          • Tote bags

The problem is with the 4° level of nesting (Tote bags in my example). In fact if I expand the treeview of Handbags, I receive a 404 error from console:

http://172.50.0.10/admin_o35t7f/smartcategory/rule/categoriesJson/key/7e318a4e519498749fc91536bc31318ce956a87f31458af4818398e3b0cd24ab/attribute/category_ids/form/category_formrule_conditions_fieldset_328/?isAjax=true

The route smartcategory/rule/categoriesJson does not exists. Could this be linked with the indexing error?

Problem showing configurable items correctly

Precondition

  • additionally module https://github.com/karliuka/m2.SmartCategoryConfigurable installed
  • create category with special price filter and option replace on configurable set to true
  • create a configurable (visibility catalog, search) with multiple configurated simple products (visibility individually not visible)

Action

  • add special price for one of the simple products of the configurable

Expected

  • the configurable product is shown in the given smart category in the frontend

Result

  • the configurable product is not shown in the given smart category

Current findings

  • within the catalog_product_category table only the simple product is added to the smart category and therefor the normal category_product_indexer does not add it to the index as the simple product is not visible individually
  • the arrays $postedProducts and $matchingProducts (\Faonni\SmartCategory\Model\Indexer\IndexBuilder::updateRuleProductData) differ but deleteIds and insertIds are both empty to due the array_diff method (both product arrays have the following structure: [productId1 => 1, productId2 => 1, ... ]. Therefore i think the correct solution would be to change the php method array_diff with array_diff_key to gain the differences in both arrays in
    $deleteIds = array_diff($postedProducts, $matchingProducts);
    but i am not quite sure if the current check was intentional

Support for EE

I notice there is a conflict configured for EE, is this precautionary or is there a known conflict? Any chance for support for EE?

Error: "Please specify a rule."

Hi,

Im am using:
Magento ver. 2.2.2

The error is shown when saving a category were a smart rule is applied. When we open the "Products in Category " tab and then save the category, the error is gone

current release not available for composer

Greetings,

when i try to install the newsest version of the extension with composer, it only let me install outdated versions.

Example:
The requested package faonni/module-smart-category-kit ^2.3 exists as faonni/module-smart-category-kit[2.0.7, 2.0.8, 2.1.0, 2.1.1, dev-master] but these are rejected by your constraint

How can this issue be resolved?

I know, i can uninstall it with composer and re-install the downloaded version from github, but this is manually effort i want to avoid.

Thank you and best regrads,
Kai

Update on save indexer issue

Hi,

In Magento 2.1.4 saving a product is not working when we set Smart Category Product Rule indexer to "update on save". When we set the indexer to "update by schedule" we can save products again. But the Smart Category Product Rule indexer is not updating. How many times does the indexer update per day?

Magento 2.2 error

With category set as anchor (for layered navigation) and smart_category enabled the following error occurs.

"You cannot define a correlation name 'smart_category' more than once"

Furthermore, the category in Admin states 9 (in my case) products but the front-end states nothing found. Using "Is New" condition.

Debug error log

Installed on Magento 2.3.1 Php 7.1

We have the below error in debug.log

main.CRITICAL: Class Faonni\SmartCategoryConfigurable\Model\Indexer\Product\ConfigurableIndexBuilder does not exist {"exception":"[object] (ReflectionException(code: -1): Class Faonni\SmartCategoryConfigurable\Model\Indexer\Product\ConfigurableIndexBuilder does not exist at /home/example/public_html/vendor/magento/framework/Code/Reader/ClassReader.php:19)"} []

New products

Hi,

When adding new products to magento the indexer does not automatically updates the category, so it is not adding the new products by rule to the categories. How can we do this?

Validate special price date

Hello, this module is very useful, but products still in category if date (to /from) of special price even if is expired.

How can i remove automatically these productions from a smart category?

Magento 2.2.3

Special Price condition not working for configurable products

Running a clothing store, we exclusively use configurable products.
Price, special price and special from/to dates are all null on configurable products.

I've managed to get validation working correctly on configurable products which have a valid special price on at least one of its associated products (children).

Have I missed something?? If not, would you consider including the following code?

// SmartCategory/Model/Rule/Condition/Product/Sale.php

/**
 * Validate product attribute value for condition
 *
 * @param AbstractModel $model
 * @return bool
 */
public function validate(AbstractModel $model)
{
    $isOnSale = false;
    
    if ($model->getTypeId() == 'configurable') {
        $models = $model->getTypeInstance()->getUsedProducts($model);
        foreach ($models as $model) {
            if ($this->validateSingleProduct($model)) {
                return true;
            }
        }
        return false;
    } else {
        return $this->validateSingleProduct($model);
    }
}

public function validateSingleProduct(AbstractModel $model)
{
    $specialPrice = $model->getSpecialPrice();
    $isDateInterval = $this->_localeDate->isScopeDateInInterval(
        $model->getStore(),
        $model->getSpecialFromDate(),
        $model->getSpecialToDate()
    );

    if ($this->getOperator() == '==' && $specialPrice && $isDateInterval) {
        return true;
    } elseif ($this->getOperator() == '!=' && (!$specialPrice || !$isDateInterval)) {
        return true;
    }
    return false;
}

Thanks,
Luca

add ordering of indexer

as the smart category indexer writes entries into the table catalog_category_product the indexer should run before the indexer of the catagory_product_index to include all changes generated by the smart category.

the ordering could be changed within the module by adding following snippet to the indexer.xml:

<indexer id="catalog_category_product"> <dependencies> <indexer id="smartcategory_product"/> </dependencies> </indexer>

additionally the according category-product index should be invalidated (i guess by using the indexerregistry?)

Exception #0 (ReflectionException): Class Faonni\SmartCategorySale\Observer\ValidateDataObserver does not exist

Hi,
Can this extension be used on Magento 2.1.7?
I install it on Magento ver. 2.1.7, I enabled the Smart Category,but I get error when click the save button on Categories page.

1 exception(s):
Exception #0 (ReflectionException): Class Faonni\SmartCategorySale\Observer\ValidateDataObserver does not exist

Exception #0 (ReflectionException): Class Faonni\SmartCategorySale\Observer\ValidateDataObserver does not exist
#0 /var/www/html/magento2/vendor/magento/framework/Code/Reader/ClassReader.php(19): ReflectionClass->__construct('Faonni\SmartCat...')
#1 /var/www/html/magento2/vendor/magento/framework/ObjectManager/Definition/Runtime.php(44): Magento\Framework\Code\Reader\ClassReader->getConstructor('Faonni\SmartCat...')
#2 /var/www/html/magento2/vendor/magento/framework/ObjectManager/Factory/Dynamic/Developer.php(71): Magento\Framework\ObjectManager\Definition\Runtime->getParameters('Faonni\SmartCat...')
#3 /var/www/html/magento2/vendor/magento/framework/ObjectManager/ObjectManager.php(71): Magento\Framework\ObjectManager\Factory\Dynamic\Developer->create('Faonni\SmartCat...')
.....................

Thank you!

scheduled special price products do not show in category

Step to re produce

  • schedule products with special price (or new) to run by cron for next day.

expect results

  • Special price products shows in category and record found in category backend under "Products in Category " tab

actual results

  • product records didn't show up until manually save it from backend catalog > category

smrtcategory

*note my cron runs successfully without any issues

Composer install error with Magento 2.4.0

Magento 2.4.0 is out and this module's latest version (2.3.2) blocks the upgrade in Composer due to the module's requirements on three Magento modules from version 2.3.x.

The M2 modules' version currently required is 103.0.* but it needs to be 104.0.* - can you update those requirements and produce a new version 2.4?

I can provide more details but I figure you'll know what I'm taking about.
Thanks,
Luca

We can't find products matching the selection.

i use this extension with our existing products, but when i applied any rule with another category, product will not shown and i got this error "We can't find products matching the selection.". as i am new in Magento please let me know where i am doing wrong. Note: i have assigned categories to products by manually before install this extension.

image

HERE IN CATEGORY PRODUCTS ARE SHOWING, BUT NOT IN FRONTEND OR SEARCH
image

Error on setup:di:compile

Hi,
When running setup:di:compile i get following errors.
I'm on Magento 2.1.8

BErrors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2 Errors during compilation: Faonni\SmartCategory\Model\Rule\Condition\Product\News Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\News in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/News.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Faonni\SmartCategory\Model\Rule\Condition\Product\Sale Incorrect dependency in class Faonni\SmartCategory\Model\Rule\Condition\Product\Sale in /home/smarthem/www/magento2/vendor/faonni/module-smart-category/Model/Rule/Condition/Product/Sale.php \Magento\Framework\Stdlib\DateTime\TimezoneInterface already exists in context object Total Errors Count: 2

SmartCategory Indexer Issue

Hi @karliuka all

Please help. Urgent Fix needed on Production. Magento version:2.1.2 PHP 5.6 Have multiple stores. When installed it is fine. It has been 2 months we have installed this module. I suspect when added staging rule(content->staging->dashboard), this indexer is getting failed. I assume there is some conflict arised between other features or modules. Appreciate if any one can respond immediately. FYI, this error is also displayed after 1 hour

Error:
-bash-4.2$ bin/magento indexer:reindex smartcategory_product
SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails (indGdbPrd.in_catalog_category_product, CONSTRAINT CAT_CTGR_PRD_CTGR_ID_IN_SEQUENCE_CAT_CTGR_SEQUENCE_VAL FOREIGN KEY (category_id) REFERENCES in_sequence_catalog_category (sequence_), query was: INSERT INTO in_catalog_category_product (category_id,product_id,position`) VALUES (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?)

etc/module.xml of the module








PHP 7.1.16 not supported

Hi,

when installing on magento 2.3 and PHP 7.1.16

magento/module-rule 100.1.9 requires php ~5.6.5|7.0.2|7.0.4|~7.0.6 -> your PHP version (7.1.16) does not satisfy that requirement.
- magento/module-rule 100.1.8 requires php ~5.6.5|7.0.2|7.0.4|~7.0.6 -> your PHP version (7.1.16) does not satisfy that requirement.
- magento/module-rule 100.1.7 requires php ~5.6.5|7.0.2|7.0.4|~7.0.6 -> your PHP version (7.1.16) does not satisfy that requirement.
- magento/module-rule 100.1.6 requires php ~5.6.5|7.0.2|7.0.4|~7.0.6 -> your PHP version (7.1.16) does not satisfy that requirement.
- magento/module-rule 100.1.5 requires php ~5.6.5|7.0.2|7.0.4|~7.0.6 -> your PHP version (7.1.16) does not satisfy that requirement.
- magento/module-rule 100.1.4 requires php ~5.6.5|7.0.2|7.0.4|~7.0.6 -> your PHP version (7.1.16) does not satisfy that requirement.
- magento/module-rule 100.1.3 requires php ~5.6.5|7.0.2|7.0.4|~7.0.6 -> your PHP version (7.1.16) does not satisfy that requirement.
- magento/module-rule 100.1.2 requires php ~5.6.5|7.0.2|7.0.4|~7.0.6 -> your PHP version (7.1.16) does not satisfy that requirement.
- magento/module-rule 100.1.1 requires php ~5.6.5|7.0.2|7.0.4|~7.0.6 -> your PHP version (7.1.16) does not satisfy that requirement.

Unable to unserialize value error during upgrade to M2.2.0

Hi and thank you for the nice work here!

I received following error during upgrade to Magento 2.2.0 from 2.1.9 . Not sure if this was reported but I wanted bring up to your attention.

==> var/log/exception.log <==

[2017-10-12 00:44:45] main.CRITICAL: Asymmetric transaction rollback. {"exception":"[object] (Exception(code: 0): Asymmetric transaction rollback. at vendor/magento/framework/DB/Adapter/Pdo/Mysql.php:316)"} []
[2017-10-12 00:45:03] main.CRITICAL: Unable to unserialize value. {"exception":"[object] (InvalidArgumentException(code: 0): Unable to unserialize value. at vendor/magento/framework/Serialize/Serializer/Json.php:39)"} []
[2017-10-12 00:45:03] main.CRITICAL: Unable to unserialize value. {"exception":"[object] (Magento\\Framework\\Exception\\LocalizedException(code: 0): Unable to unserialize value. at vendor/faonni/module-smart-category/Model/Indexer/IndexBuilder.php:167, InvalidArgumentException(code: 0): Unable to unserialize value. at vendor/magento/framework/Serialize/Serializer/Json.php:39)"} []

Special Price Condition

Hi,

I can't find any way to create a smart category for products on special price?
If I use condition: Special Price greater than 0 it also shows products where special price has expired.

Memory Leak - massive memory usage

Hello,

we have a large amount of products in the shop.
Currently it's round about 1,000,000 simple items, the most of them are related to 35,000 configurable items.
We configured around 590 category rules.

i just wanted to do a full reindex an discovered the following:

It takes 2 to 5 minutes per rule to complete the indexing.
It also stacks up the memory if there are conditions set. more complex conditions take more memory.
But the real problem is, that eventually all 128 GB RAM is used and the indexer gets "Killed".

I found out that it is related to the following function call:
class: vendor/faonni/module-smart-category/Model/Rule/Condition/Combine.php
function: collectValidatedAttributes($productCollection)

i tracked the memory usage around it and it keeps building up.

i failed freeing the memory in any possible way i could think of.

Could anybody please look into it and come up with some suggestions to fix this issue?

The "normal" indexing seems to work fine, because it never uses all the IDs to index, at least i hope so. But i'm not sure about the memory, because i got no time to track it, but i will next week.

Thanks in advance and best regards,
Kai

Grouped products

If product is child of grouped product would be good for parent product to be listed. is this possible?

out of memory problem reintroduced on 12 Sep 2021

Hi @karliuka,

i just looked at the latest commits and discovered a possible problem regarding the commit 2f447be

The code, which reduced the usage of RAM significantly was removed from "Model/Rule/Condition/Product.php".

Was that intentional?

Without that code, the issue that was fixed with pull request #43 is reintroduced.

The cronjob crashes after some time, because of the massive memory consumption.

We have 2.500+ Rules and 200k+ active products in our database.

We will work on other optimizations.

But if the removal was a mistake, could you please put the code in again?

Thanks and best regards,
Kai

Bug in rule with multipleselect atttribute

First of all I want to thanks you for this amazing extension 👍 ! We had an M1 store before and used the same extension from proxiblue.. so I was glad to find out that this extension works for M2.

Nevertheless, I found a bug that caused invalid products in some categories. I tried to fix it myself but I couldn't figure it out. So that is why I have explained it here as well as possible.

The situation:
image
A rule is applied with a value of 1 multiple select attribute.
eav_attribute_option:
attribute_id -> 188 (subtheme)
option_id -> 661 (flintstones)

SQL data:
{"type":"Faonni\SmartCategory\Model\Rule\Condition\Combine","attribute":null,"operator":null,"value":"1","is_value_processed":null,"aggregator":"any","conditions":[{"type":"Faonni\SmartCategory\Model\Rule\Condition\Product","attribute":"subtheme","operator":"{}","value":["661"],"is_value_processed":false}]}

Expected output:
Products which contains subtheme = "flintstones" are added to this categorie.

Real output / the problem:
Products which contains the "beetlejuice" value (option_id=6661) are also added to the categorie.

Reason:
The subtheme (attribute_id=188) also has an option_id=6661 (beetlejuice)... so when making the (I think LIKE %661%) sql query... these items are also added.

Hacky solution: I can add a rule like
image
But when new attribute options are added to subtheme.. this problem will keep repeating again and again.

Other (in my case not working) hacky solution:
image
The products does have multiple options (587,661) in subtheme, so it doens't work.
value_id / attribute_id / store_id / entity_id / value
430475 / 188 / 0 / 7876 / 587,661

Hopefully I have clarified when the problem occurs and what the problem is. If you need more information, let me know!

Attribute [store view] in Smart Rule

Hi @karliuka,

Attribute usage whose scope is the store view in the contiditions of smart categories.
The problem is that only the default value is taken into account when applying the rule.

Is it possible to add a GLOBAL parameter to choose the store that will be emulated when applying the rule allowing the populated?

Best regards

2.0.9

Hi,
What's new in version 2.0.9?

Product has a Special Price

The algorythm doesn't check if the Special Price is active at the moment. It only checks if the attribute is set.

Steps to reproduce:

  • Activate Smart category
  • Add Condition Product has a Special Price
  • Have Products with Special Price set.
  • Products have Special Price from and Special Price to set
  • Current date is not within that Dateframe

Expected result:
Products with special price and current date being outside of Dateframe are not added to the smart category.

Actual result:
Products with special price and current date being outside of Dateframe are added to the smart category.

Version used:
2.2.5

SQL error: missing table on manual installation

Hi,

I running into the following SQL error on setup:upgrade when doing a manual install:

SQLSTATE[42S02]: Base table or view not found: 1146 Table '{OUR DB NAME].faonni_smartcategory_rule' doesn't exist, query was: SELECT COUNT(*) AS `rows_count` FROM `faonni_smartcategory_rule` WHERE (conditions_serialized IS NOT NULL)

It seems that it's looking for a table that isn't there. We don't use a table prefix, but this seems similar to #25.

I've tried v2.1.10 and v2.3.1 on Magento 2.2.5 CE.

Updating product attribute (ex. new) does not update category products

Forgive me if I understood wrong the functionality here, but bare with me whilst I describe the scenario:

Category "New Arrivals" I wish to make "smart category" to automatically list all products flagged as new.

I set the conditions and save the category:

image

Then refresh the front-end and after indexers pickup the change the products show.

Now I go to one of those products and set it to not be new.

The front-end still shows products including the one changed, even if I re-index.

The change will not occur to front-end even if I re-save the "New Arrivals" category.

Is this normal operation or should "smart category" detect the changes and display the correct product list with latest changes?

If magento2 has specified prefix for tables in DB error occurs during setup:upgrade

Steps to reproduce:

  1. Install clean 2.2.6 magento.
  2. In env.php set 'table_prefix' => '...'
  3. Install the module (SmartCategory)
  4. Run php bin/magento setup:upgrade

Expected result:
Successfully executed php bin/magento setup:upgrade

Real result:
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'tilestonesource_store.catalog_eav_attribute' doesn't exist, query was: DESCRIBE catalog_eav_attribute

Example:

default

Unique constraint violation found

I get this error (Unique constraint violation found) while saving the category after I have set the rules. Magento ver 2.3.6

Argument 1 passed to Magento\Catalog\Model\Category\FileInfo::removeStorePath() must be of the type string, array given, called in /var/www/html/vendor/magento/module-catalog/Model/Category/FileInfo.php on line 167

Screenshot_1
Screenshot_2

Special price less than 100

Hi, how can i implement this functionality, to add products that have Special price with specific price.

e.g: a category for all products that are under $100.

Plugin is misbehaving in Multi Store setup

Hi Karliuka,

We are using magneto 2.12 version for our multi store application. So,we have used your plugin (version 2.1.x) in our application. But which is not working correctly in multi store setup. We are struggling with this requirement from long back. Please help us on this. We are highly appreciated.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.