
There are following below set of Database Tables store Shopping Cart Items & its related data.
quote
quote_item
quote_item_option
quote_payment
quote_address
quote_address_item
quote_payment
quote_shipping_rate
quote_id_mask
There are following below set of Database Tables store Shopping Cart Items & its related data.
quote
quote_item
quote_item_option
quote_payment
quote_address
quote_address_item
quote_payment
quote_shipping_rate
quote_id_mask
There are following below set of Database Tables store product attributes.
eav_attribute
eav_attribute_group
eav_attribute_label
eav_attribute_option
eav_attribute_option_swatch
eav_attribute_option_value
eav_attribute_set
Magento 2 All Database Tables [500 and more Tables]
Magento 2 All Database Tables [500 & more Tables]
Which Magento 2 database table store customer’s Email Data
Which Magento 2 Database Table Store Customer Newsletter Data
Which Magento 2 database table store customer’s shipping and billing address
How To Remove Sales Order Data & Customer Data in Magento 2
Which Magento 2 Database Tables Store Customer Rating
Which Magento 2 Database Tables Store Customer Review
Which Magento 2 Database Tables Store Customer Wishlist Products
Which Magento 2 Database Table Store Patches
Which Magento 2 Database Table Store Patches
Which Magento 2 Database Table Store Static Blocks & Its Details
Which Magento 2 Database Table Store CMS Pages & Its Details
Which Magento 2 Database Tables Having All URLs Storage
There are following below database tables store bundles products
catalog_product_bundle_option
catalog_product_bundle_option_value
catalog_product_bundle_price_index
catalog_product_bundle_selection
catalog_product_bundle_selection_price
catalog_product_bundle_stock_index
Magento 2 All Database Tables [500 and more Tables]
Which Magento 2 database tables store Product details
Which Magento 2 database tables store Category details
How To Delete Magento 2 Categories & Products in Magento 2
Which Magento 2 Database Table Store Bundles Product
Which Magento 2 Database Table Having All Catalog (Categories & Products) URLs Rewrite Storage Data
Which Magento 2 Database Tables Store Product Attributes
How To Delete Magento 2 Products
How To Delete Magento 2 Categories
How To Delete Magento 2 Categories & Products in Magento 2
Which Magento 2 Database Table Store Customer Group Price of products
Which Magento 2 Database Table Store Products Special Discount Price
Magento 2 virtual type allows user to change the arguments of a specific injectable dependency and change the behavior of a particular class. This allows user to use a customized class without affecting other classes that have a dependency on the original.
Preference is used to override or rewrite existing / custom classes (Controller, Block & Helper). Preference using Dependency Injection to override or rewrite classes.
How To Define Preference : Preference is defined inside di.xml
Path : app/code/VendorName/ModuleName/etc/di.xml
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="urn:magento:framework:Acl/etc/acl.xsd">
<preference for="Class Which Override" type="Custom Class By Which Override" />
</config>
Overriding (By Preference in di.xml) a method is not recommended because it can cause conflicts in the system and increase the complexity to upgrade.
Always try to user other extensibility options, such as
event observers
andplugins
, when possible.
There are three types Magento 2 Plugins
“A plugin or interceptor is a class that modifies or expand or edit the behavior of public class functions by intercepting a function call or set of code before, after or around that function call”
“Inserting code dynamically without changing original class behavior is called Plugin”
Plugins using design pattern “Interception”
Plugins Limitation : There are following below criteria where plugins can not used.
Plugins Types : There are three types plugins
Both Plugins and Preferences are used to override the classes. However, Plugins are preferable than Preferences since plugins do not override the class logically instead it hooks our logic into the available classes. Finally, to modify or extend any existing business logic, it is better to use the plugins.
Preference is used for overriding class & Plugin is used for adding functionality before, after and around methods by using function call or set of code.
“Always prefer Plugin over Preference , while overriding or modify class”
module.xml file is a module’s naming configuration file, that is used to define module name, It is required to place this file into the below file path of module or custom module directory
magento/app/code/namespace/modulename/etc/module.xml
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
<module name="Namespace_Modulename" setup_version="3.0.1"/>
</config>
The schema_version is no longer required since releasing Magento 2.3.3
There are following steps defined as follows:
setup_version=”3.4.1″
There are three things in setup_module database table having three column
module : store module name as Namespace_Modulename
schema_version & data_version : The setup_version which is module version, this identify both things schema version data version as schema_version=3.4.1 & data_version=3.4.1
Module Naming convention format as follows:
The xmlns attribute provides a location to the XMLSchema instance and the xsi:noNamespaceSchemaLocation attribute provides a path to an XSD (XML Schema Definition) file of a Magento 2 framework.