Magento 2 - Làm thế nào để gỡ cài đặt mô-đun?


Câu trả lời:


42

nó nói trong tài liệu bạn liên kết, cái này:

Lệnh này chỉ hoạt động với các mô-đun được xác định là gói Composer.

Nếu bạn không cài đặt mô-đun qua trình soạn thảo, nó sẽ không hoạt động.
Bạn chỉ có thể vô hiệu hóa nó thông qua bin/magento module:disable SP_Gridthumbs.

Để xóa mô-đun, hãy xóa thư mục SP/Gridthumbs, xóa bản ghi bằng mô-đun = 'SP_Gridthumbs' khỏi bảng setup_modulevà xóa mọi bảng hoặc bản ghi khác được thêm vào khi cài đặt mô-đun.
Cũng loại bỏ dòng với SP_Gridthumbstừapp/etc/config.php


Làm thế nào để loại bỏ tất cả các mô-đun này ra khỏi dự án, cách của bạn chỉ cần vô hiệu hóa.
MrTo-Kane

@ MagentoOdoo.com xem cập nhật của tôi
Marius

Bạn cũng nên dọn sạch bộ đệm
WaPoNe

3
Tôi đã thử nó. Remove the line with SP_Gridthumbs from app/etc/config.phpkhông cần. Magento sẽ tự động xóa bản ghi bằng cách chạyphp bin/magento setup:upgrade
Key Shang

Trên thực tế tôi phải cập nhật một bản ghi từ bảng và mã này được đặt trong InstallData.php :: install () và khi kích hoạt mô-đun và thiết lập: nâng cấp nó sẽ chạy mã của tôi. và bây giờ tôi cần khi tôi vô hiệu hóa mô-đun thì cũng nên xóa recorde khỏi bảng tôi đã làm mã trong Gỡ cài đặt :: gỡ cài đặt nhưng không kích hoạt khi tắt mô-đun. Tập tin nào kích hoạt khi vô hiệu hóa mô-đun và thiết lập: nâng cấp
HaFiz Umer

10

Dưới đây là các bước để Gỡ cài đặt Mô-đun theo cách thủ công cho Magento 2

  • Xóa thư mục Mô-đun khỏi {folder path}\app\code
  • Xóa mục nhập mô-đun khỏi setup_module
  • Chạy lệnh

    {đường dẫn gốc của dự án magento}> {đường dẫn php} \ php.exe bin / magento setup: nâng cấp => Cài đặt nâng cấp

    {đường dẫn gốc của dự án magento}> {đường dẫn php} \ php.exe bin / magento cache: flush => Xóa bộ nhớ cache


4

Làm thế nào về:

php bin/magento module:disable <ExtensionProvider_ExtensionName> --clear-static-content
composer remove VendorName/VendorExtensionRepository
php bin/magento setup:upgrade

Đối với các mô-đun soạn thảo:

php bin/magento module:disable <ExtensionProvider_ExtensionName> --clear-static-content
php bin/magento module:uninstall <ExtensionProvider_ExtensionName> -r
composer update
php bin/magento setup:upgrade

Chạy thiết lập: nâng cấp trong khi có các mô-đun không được cài đặt qua trình soạn thảo sẽ khiến chúng được cài đặt và kích hoạt lại, điều này làm thất bại mục đích.
Mohammed Joraid

1
@MohammedJoraid xem câu trả lời được cập nhật
Arvind07

1

Các bước để gỡ cài đặt mô-đun cài đặt trình soạn thảo

  • mô-đun bin / magento: vô hiệu hóa Namespace_ModuleName
  • mô-đun bin / magento: gỡ cài đặt Namespace_ModuleName
  • nhà soạn nhạc xóa không gian tên / tên mô-đun
  • bộ đệm bin / magento: tuôn ra

Các bước để gỡ cài đặt mô-đun được thêm thủ công trong ứng dụng / mã

  • mô-đun bin / magento: vô hiệu hóa Namespace_ModuleName
  • xóa thư mục khỏi ứng dụng / mã theo cách thủ công
  • thiết lập bin / magento: nâng cấp
  • bộ đệm bin / magento: tuôn ra

0

Magento 2: Cách gỡ cài đặt mô-đun

1. Nếu bạn cài đặt thủ công:

remove the folder app/code/<Vendor>/<Module>
drop module tables from database
remove the config settings.

DELETE FROM core_config_data WHERE path LIKE 'vendor_module/%'   
DELETE FROM core_config_data WHERE path LIKE 'vendor_module/%'

remove the module <Vendor>_<Module> from app/etc/config.php

remove the module <Vendor>_<Module> from table setup_module

DELETE FROM setup_module WHERE module='<Vendor>_<Module>'    
DELETE FROM setup_module WHERE module='<Vendor>_<Module>'

2.Nếu bạn cài đặt nó thông qua trình soạn thảo:

run this in console
php bin/magento module:uninstall -r <Vendor>_<Module>    
php bin/magento module:uninstall -r <Vendor>_<Module>

Mong ai đó giúp đỡ


0

Tôi nghĩ rằng đầu tiên là vô hiệu hóa mô-đun bằng cách sử dụng

Mô-đun php bin / magento: tắt tên mô-đun

bởi vì điều này kiểm tra sự phụ thuộc ...


0

Gỡ cài đặt tiện ích mở rộng từ magento 2:

  1. Chuyển đến thư mục dự án magento của bạn trong CLI và kiểm tra trạng thái mô-đun, bằng cách chạy lệnh php bin/magento module:status

  2. Nếu nó được kích hoạt, làm cho nó vô hiệu hóa bằng cách chạy lệnh php bin/magento module:disable <extension name>

  3. Chuyển đến cơ sở dữ liệu và tìm kiếm bảng 'setup_module' và tìm kiếm tên tiện ích mở rộng của bạn và xóa nó

  4. Xóa thư mục tên mở rộng của bạn khỏi thư mục ứng dụng / mã

  5. Chạy lệnh setup: nâng cấp.

  6. Bạn đã thành công gỡ cài đặt phần mở rộng.


0

ĐÂY LÀ BƯỚC THEO HƯỚNG DẪN BƯỚC ĐỂ UNINSTALL BẤT K MOD MÔ HÌNH BÊN THỨ BA NÀO TỪ MAGENTO 2 MANUALLY.

Step 1: Remove the module Vendor_Mymodule from app\etc\config.php

Step 2: Drop module tables or columns from database, please check app\code\Vendor\Module\Setup folder for more information

Step 3: Remove the folder app\code\vendor\Mymodule

Step 4: Remove module configuration settings from core_config_data table by running the following query


 DELETE FROM setup_module WHERE module LIKE 'vendor_Mymodule';
Step 5: Run the following command by logging onto your SSH server

 php bin/magento setup:upgrade
But if you have installed the module via composer then you can run the following list of commands by SSHing on the box to uninstall third party module

 php bin/magento module:uninstall -r {{module_name}}
for example

php bin/magento module:uninstall -r Scommerce_GoogleTagManagerPro
-r flag removes module data 

Run the following command once module has been successfully uninstalled.

 php bin/magento setup:upgrade

Để Mô-đun Magento2 tùy chỉnh

step1: disable the module 
$php bin/magento module:disable Vendor_MyModule
step2: remove the folder from directory app/code/Vendor
step3: remove the line of code from app/etc/config.php file.

để biết thêm về cách gỡ cài đặt tiện ích mở rộng của bên thứ ba / nhà soạn nhạc đã cài đặt

https://www.sc Commerce-mage.com/blog/magento2-uninstall-module.html


Điều gì xảy ra nếu bạn có các mô-đun khác nhau bởi cùng một nhà cung cấp mà bạn muốn giữ? Các truy vấn SQL của bạn sẽ phá vỡ chúng.
Đaminh Xigen

Chỉ cần chỉnh sửa câu trả lời của tôi.
Arshad Syed

-7
  1. Mở setup/src/Magento/Setup/Console/Command/ModuleUninstallCommand.php

và thay thế

protected function validate(array $modules)
{
    $messages = [];
    $unknownPackages = [];
    $unknownModules = [];
    $installedPackages = $this->composer->getRootRequiredPackages();
    foreach ($modules as $module) {
        if (array_search($this->packageInfo->getPackageName($module), $installedPackages) === false) {
            $unknownPackages[] = $module;
        }
        if (!$this->fullModuleList->has($module)) {
            $unknownModules[] = $module;
        }
    }
    $unknownPackages = array_diff($unknownPackages, $unknownModules);
    if (!empty($unknownPackages)) {
        $text = count($unknownPackages) > 1 ?
            ' are not installed composer packages' : ' is not an installed composer package';
        $messages[] = '<error>' . implode(', ', $unknownPackages) . $text . '</error>';
    }
    if (!empty($unknownModules)) {
        $messages[] = '<error>Unknown module(s): ' . implode(', ', $unknownModules) . '</error>';
    }
    return $messages;
}

với

protected function validate(array $modules)
{
    $messages = [];
    $unknownPackages = [];
    $unknownModules = [];
    $installedPackages = $this->composer->getRootRequiredPackages();
    foreach ($modules as $module) {
        if (array_search($this->packageInfo->getPackageName($module), $installedPackages) === false) {
            $unknownPackages[] = $module;
        }
        if (!$this->fullModuleList->has($module)) {
            $unknownModules[] = $module;
        }
    }
    if (!empty($unknownModules)) {
        $messages[] = '<error>Unknown module(s): ' . implode(', ', $unknownModules) . '</error>';
    }
    return $messages;
}
  1. Mở setup/src/Magento/Setup/Model/ModuleUninstaller.php

và thay thế

public function uninstallCode(OutputInterface $output, array $modules)
{
    $output->writeln('<info>Removing code from Magento codebase:</info>');
    $packages = [];
    /** @var \Magento\Framework\Module\PackageInfo $packageInfo */
    $packageInfo = $this->objectManager->get('Magento\Framework\Module\PackageInfoFactory')->create();
    foreach ($modules as $module) {
        $packages[] = $packageInfo->getPackageName($module);
    }
    $this->remove->remove($packages);
}

với

public function uninstallCode(OutputInterface $output, array $modules)
{
    $output->writeln('<info>Removing code from Magento codebase:</info>');
    $packages = [];
    /** @var \Magento\Framework\Module\PackageInfo $packageInfo */
    $packageInfo = $this->objectManager->get('Magento\Framework\Module\PackageInfoFactory')->create();
    foreach ($modules as $module) {
        $packages[] = $packageInfo->getPackageName($module);
    }
}
  1. Nói "lyaska masyaska"

Lưu ý, giải pháp không được khuyến nghị trên máy chủ sản xuất

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.