回答:
それはあなたがリンクしたドキュメントでこれを言っています:
このコマンドは、Composerパッケージとして定義されたモジュールでのみ機能します。
composerを介してモジュールをインストールしなかった場合、機能しません。
を介してのみ無効にできbin/magento module:disable SP_Gridthumbs
ます。
モジュールを削除するには、フォルダーSP/Gridthumbs
を削除し、モジュール= 'SP_Gridthumbs'のレコードをテーブルsetup_module
から削除し、モジュールのインストールによって追加された他のテーブルまたはレコードを削除します。from
の行も削除しますSP_Gridthumbs
app/etc/config.php
Remove the line with SP_Gridthumbs from app/etc/config.php
必要ありません。Magentoは実行によりレコードを自動削除しますphp bin/magento setup:upgrade
どうですか:
php bin/magento module:disable <ExtensionProvider_ExtensionName> --clear-static-content
composer remove VendorName/VendorExtensionRepository
php bin/magento setup:upgrade
composerモジュールの場合:
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
Composerがインストールしたモジュールをアンインストールする手順
app / codeに手動で追加されたモジュールをアンインストールする手順
magento 2から拡張機能をアンインストールします。
CLIでmagentoプロジェクトディレクトリに移動し、コマンドを実行してモジュールのステータスを確認します
php bin/magento module:status
有効になっている場合は、コマンドを実行して無効にします
php bin/magento module:disable <extension name>
データベースに移動して「setup_module」テーブルを検索し、拡張名を検索して削除します
app / codeフォルダーから拡張名フォルダーを削除します
setup:upgradeコマンドを実行します。
拡張機能をアンインストールしました。
ここに、MAGENTO 2からサードパーティのモジュールを手動でアンインストールするためのステップバイステップガイドがあります。
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
カスタムMagento2モジュールへ
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.
サードパーティ/ composerがインストールした拡張機能のアンインストールの詳細
https://www.scommerce-mage.com/blog/magento2-uninstall-module.html
Magento 2:モジュールをアンインストールする方法
1.手動でインストールした場合:
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. composer経由でインストールした場合:
run this in console
php bin/magento module:status
php bin/magento module:disable mirasvit/module-core --clear-static-content
php bin/magento module:uninstall -r <Vendor>_<Module>
php bin/magento setup:upgrade
php bin/magento c:f
composer remove mirasvit/module-core
誰かが助けを願っています
setup/src/Magento/Setup/Console/Command/ModuleUninstallCommand.php
そして交換する
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;
}
と
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;
}
setup/src/Magento/Setup/Model/ModuleUninstaller.php
そして交換する
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);
}
と
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);
}
}
注:このソリューションは本番サーバーでは推奨されていません