Browse Source

Refactor plugin removal process in wp-import.php to handle non-empty directories and check for installed plugins before deactivation.

main
Roman Axelrod 1 month ago
parent
commit
6c6493d3db
  1. 16
      wp-import.php

16
wp-import.php

@ -28,9 +28,12 @@ try {
exit( 1 ); exit( 1 );
} }
rmdir( './wp-content/plugins/post-smtp' ); // Remove plugin directories (must be empty for rmdir; use recursive delete if they contain files).
rmdir( './wp-content/plugins/wordfence' ); @rmdir( './wp-content/plugins/post-smtp' );
rmdir( './wp-content/plugins/wp-imgix*' ); @rmdir( './wp-content/plugins/wordfence' );
foreach ( glob( './wp-content/plugins/wp-imgix*', GLOB_ONLYDIR ) ?: [] as $dir ) {
@rmdir( $dir );
}
$plugins = [ $plugins = [
'wp-2fa', 'wp-2fa',
@ -63,7 +66,6 @@ $plugins = [
'wp-file-manager', 'wp-file-manager',
'updraftplus', 'updraftplus',
'wp-smushit', 'wp-smushit',
'akismet',
'leadin', 'leadin',
'clickcease-click-fraud-protection', 'clickcease-click-fraud-protection',
'gtm-server-side', 'gtm-server-side',
@ -81,6 +83,10 @@ $plugins = [
]; ];
foreach ( $plugins as $plugin ) { foreach ( $plugins as $plugin ) {
echo shell_exec( "wp plugin deactivate $plugin" ); $plugin_esc = escapeshellarg( $plugin );
exec( "wp plugin is-installed $plugin_esc 2>/dev/null", $_, $return_code );
if ( $return_code === 0 ) {
echo shell_exec( "wp plugin deactivate $plugin_esc" );
}
} }

Loading…
Cancel
Save