Our Feature Items: SM Market // SM AutoStore // SP Revo
Shopping cart (0)

A list of core Magento 2 modules that can be disabled

Rate this item
(3 votes)
Written by  Hoant
Tuesday, 22 June 2021 14:21
A list of core Magento 2 modules that can be disabled - 4.3 out of 5 based on 3 votes

With version 2.4.x, Magento includes about 200 internal PHP packages plus more than a hundred external PHP packages. These numbers have grown a lot in the last few releases, especially with several packages for the GraphQL integration and for the Multi Source Inventory.
Magento 2 has a lot of built-in modules that provide different functionality, but you don’t need to use all of them 100% of the time. This means that you can safely disable elements of the platform’s modules to give performance. You’ll achieve better performance, and your admin users won’t have to deal with superfluous functionality that isn’t being fully utilised.
Maybe it would be useful to prepare a list of core Magento 2 modules that can be disabled with no harm for your store, because they are hardly used.


Benefits of removing core modules

  • Less code means less maintenance work
  • Removed code is debugged code
  • Fewer security risks
  • Magento becomes faster with certain modules disabled
  • How to display Magento 2 module list?

    If there is a need to find a complete list of modules installed on your Magento 2, follow the steps:
  • Log in to your Magento 2 installation root folder: use SSH via Terminal or Putty.cd;
  • Use the Magento 2 enabled modules command: php bin/magento module:status to see a list of Magento 2 all enabled / disabled modules:

  • magentech

    List of not-used core modules that can be disabled with no harm

    It’s up to you which modules to remove. Here, we present a suggestion, list of what I think the modules do, it might help knowing what you can try to disable. Important note: Before disabling any of these modules, it’s worth double-checking whether you need them or not. Some of them could contain hidden dependencies or functionalities that you find you rely on. For example, the “Magento_AdminNotification” module is sometimes used by third-party modules, to show notifications..
  • AdminNotification: can be disabled. But it's useful to get the last security information.
  • AdvancedPricingImportExport: I reckon this one can be disabled if you don't use the Import/Export feature or the advanced pricing.
  • Authorization: cannot be disabled it's the module that handles the ACL
  • Authorizenet: can be disabled if you don't use Authorize.net
  • Backend: cannot be disabled it handles the backend.
  • Backup: can be disabled if you don't use the Magento backup feature.
  • BrainTree: can be disabled if you don't use BrainTree
  • Bundle: can be disabled if you don't use bundle products.
  • BundleImportExport: can be disabled if you don't use bundle products via Import/Export
  • CacheInvalidate: can be disabled if you don't use Varnish cache (but you should!)
  • Captcha: can be disabled if you don't use captchas
  • Catalog: well I reckon it can be disabled but why would you ?
  • CatalogImportExport: can be disabled if you don't use Import/Export for the catalog
  • CatalogInventory: cannot be disabled
  • CatalogRule: I reckon it could be disabled if you don't use catalog price rules
  • CatalogRuleConfigurable: can be disabled if you don't use catalog price rule with configurable products
  • CatalogSearch: keep it
  • CatalogUrlRewrite: same for this one
  • CatalogWidget: this one can be disabled if you don't use the catalog widget product list
  • Checkout: keep it
  • CheckoutAgreements: can be disabled if you don't use the checkout agreements.
  • Cms: ain't sure if it can really be disabled if you don't use CMS features to be honest.
  • CmsUrlRewrite: see above
  • Config: cannot be disabled it handles the System Configuration feature.
  • ConfigurableImportExport: can be disabled if you don't use configurable with the Import/export feature
  • ConfigurableProduct: can be disabled if you don't use configurable products
  • Contact: can be disabled if you don't use the contact page
  • Cookie: keep it
  • Cron: same here
  • CurrencySymbol: I think it can be disabled if you don't use multiple currencies
  • Customer: well
  • CustomerImportExport: can be disabled if you don't use the Import/Export feature with customers
  • Deploy: I reckon it depends on your deployment methods but this is the module that handles the deploy CLI commands
  • Developer: can be disabled in production I reckon, it provides several CLI commands for developers.
  • Dhl: can be disabled if you don't use DHL
  • Directory: I reckon it cannot be disabled as it handles the management of countries and regions.
  • Downlodable: can be disabled if you don't use downloadable products.
  • DownlodableImportExport: can be disabled if you don't use downlodable products with the Import/Export feature.
  • Eav: cannot be disabled
  • Email: cannot be disabled
  • EncryptionKey: should not be disabled because it handles the advanced encryption model to protect passwords/sensitive data.
  • Fedex: can be disabled if you don't use FedEx.
  • GiftMessage: can be disabled if you don't use gift messages.
  • GoogleAdwords: can be disabled if you don't use Adwords.
  • GoogleAnalytics: can be disabled if you don't use Analytics (who does that ?)
  • GoogleOptimizer: can be disabled if you don't use Google Experiment (A/B testing) with Google Analytics
  • GroupedImportExport: can be disabled if you don't use grouped products with the Import/Export feature.
  • GroupedProduct: can be disabled if you don't use grouped products.
  • ImportExport: can be disabled if you don't use the Import/Export feature at all.
  • Indexer: keep it
  • Integration: pretty sure it can be disabled if you don't use the web API.
  • LayeredNavigation: can be disabled if you don't use the Layered navigation.
  • Marketplace: can be disabled it displays partners of Magento in the backend.
  • MediaStorage: keep it
  • Msrp: I reckon it can be disabled if you don't use the MSRP feature of Magento.
  • Multishipping: can be disabled if you don't use the "ship to multiple addresses" feature.
  • NewRelicReporting: can be disabled if you don't use NewRelic.
  • Newsletter: can be disabled if you don't use the newsletter feature of Magento.
  • OfflinePayments: can be disabled if you don't use the following payment methods: bank transfer, cash on delivery, check/money order and purchase order.
  • OfflineShipping: can be disabled if you don't use the following shipping methods: free shipping, flat rate, table rates and store pickup.
  • PageCache: keep it
  • Payment: same
  • Paypal: can be disabled if you don't use PayPal.
  • Persistent: can be disabled if you don't use the persistence feature of Magento.
  • ProductAlert: can be disabled if you don't use the product alerts feature.
  • ProductVideo: can be disabled if you don't use videos for your products.
  • Quote: keep it
  • Reports: I reckon it can be disabled if you don't use the Magento reports.
  • RequireJs: keep it
  • Review: can be disabled if you don't use the review system.
  • Rss: can be disabled if you don't use RSS
  • Rule: it's the abstract module extended by the sales rule, catalog rule etc.. Theorically if you don't use any of the rules you can disable it
  • Sales: keep it
  • SalesRule: can be disabled if you don't use the shopping cart rules.
  • SalesSequence: should be kept. It's responsible for the sequences processing in Sales module.
  • SampleData: can be disabled if you don't use the sample data
  • Search: keep it
  • Security: keep it
  • SendFriend: can be disabled if you don't use the send to friend feature.
  • Shipping: keep it
  • Sitemap: you can disable it if you don't want to manage the sitemap.
  • Store: keep it
  • Swagger: I think it can be disabled if you don't want to check the Magento REST API in a user friendly format.
  • Swatches: can be disabled if you don't use the swatches
  • SwatchesLayeredNavigation: can be disabled if you don't use the swatches in your layered navigation
  • Tax: keep it except if you live in a tax free world. In that case, send me an invite to your world.
  • TaxImportExport: can be disabled if you don't use the Import/Export feature with taxes.
  • Theme: keep it
  • Translation: theorically you can disable it if you don't need translations
  • Ui: keep it
  • Ups: can be disabled if you don't UPS
  • UrlRewrite: keep it
  • User: keep it
  • Usps: can be disabled if you don't use USPS
  • Variable: can be disabled if you don't use the custom variables feature.
  • Vault: can be disabled if you don't use Vault.
  • Version: should be disabled because it allows anyone to check your Magento version by accessing /magento_version
  • Webapi: can be disabled if you don't use the REST and SOAP web services.
  • WebapiSecurity: should not be disabled if you do use REST and SOAP web services.
  • Weee: can be disabled if you don't wee/fixed product taxes
  • Widget: can be disabled if you don't use widgets
  • Wishlist: can be disabled if you don't use the wishlist feature.

  • Theoretically you should be able to disable any module if you also disable the module's dependencies.
    You should be able to see all dependencies by running the cli command bin/magento info:dependencies:show-modules. It will generate a csv file with all dependencies between the modules.

    How to Enable/ disable or uninstall modules in Magento 2

    Now, there might be some conflicting modules that cannot be enabled at the same time. So, we need to first find the dependencies of a module in the composer.json file. Open the composer.json file of the module that you want to enable or disable and check its conflict field. If there is no conflict, then you can go ahead and enable, disable, or uninstall a module.
  • To enable a module use the command:
    php bin/magento module:enable Extension_Name
  • To disable a Magento 2 module from the command line, use the command:
    php bin/magento module:disable Extension_Name
  • To uninstall and remove a Magento 2 module use the next command:
    php bin/magento module:uninstall Extension_Name
  • Having enabled or disabled one or several modules, use the next command to update the database: magento setup:upgrade and php bin/magento setup:static-content:deploy -f

    For more information about our service please contact us

    Google+
    Joomla TemplatesFree Joomla TemplatesVirtuemart TemplatesK2 TemplatesJoomShopping TemplatesHikaShop TemplatesSobiPro TemplatesOpenCart Themes
    Quà Tết Cao Cấp Hộp quà tết Giỏ quà tết Túi quà tết