All-in-One WP Migration - Version 6.47

Version Description

Added

  • Elementor plugin support

Fixed

  • Site URL and Home URL replacement in JSON data
Download this release

Release Info

Developer bangelov
Plugin Icon 128x128 All-in-One WP Migration
Version 6.47
Comparing to
See all releases

Code changes from version 6.46 to 6.47

all-in-one-wp-migration.php CHANGED
@@ -5,7 +5,7 @@
5
* Description: Migration tool for all your blog data. Import or Export your blog content with a single click.
6
* Author: ServMask
7
* Author URI: https://servmask.com/
8
- * Version: 6.46
9
* Text Domain: all-in-one-wp-migration
10
* Domain Path: /languages
11
* Network: True
5
* Description: Migration tool for all your blog data. Import or Export your blog content with a single click.
6
* Author: ServMask
7
* Author URI: https://servmask.com/
8
+ * Version: 6.47
9
* Text Domain: all-in-one-wp-migration
10
* Domain Path: /languages
11
* Network: True
constants.php CHANGED
@@ -31,7 +31,7 @@ define( 'AI1WM_DEBUG', false );
31
// ==================
32
// = Plugin Version =
33
// ==================
34
- define( 'AI1WM_VERSION', '6.46' );
35
36
// ===============
37
// = Plugin Name =
31
// ==================
32
// = Plugin Version =
33
// ==================
34
+ define( 'AI1WM_VERSION', '6.47' );
35
36
// ===============
37
// = Plugin Name =
lib/model/import/class-ai1wm-import-database.php CHANGED
@@ -118,10 +118,16 @@ class Ai1wm_Import_Database {
118
$new_values[] = ai1wm_blogsdir_path( $blog['New']['BlogID'] );
119
}
120
121
- // Get escaped Upload Path
122
- if ( ! in_array( addslashes( addcslashes( ai1wm_blogsdir_path( $blog['Old']['BlogID'] ), '\/' ) ), $old_values ) ) {
123
- $old_values[] = addslashes( addcslashes( ai1wm_blogsdir_path( $blog['Old']['BlogID'] ), '\/' ) );
124
- $new_values[] = addslashes( addcslashes( ai1wm_blogsdir_path( $blog['New']['BlogID'] ), '\/' ) );
125
}
126
127
// Get Upload Path
@@ -130,10 +136,16 @@ class Ai1wm_Import_Database {
130
$new_values[] = ai1wm_blogsdir_path( $blog['New']['BlogID'] );
131
}
132
133
- // Get escaped Upload Path
134
- if ( ! in_array( addslashes( addcslashes( ai1wm_uploads_path( $blog['Old']['BlogID'] ), '\/' ) ), $old_values ) ) {
135
- $old_values[] = addslashes( addcslashes( ai1wm_uploads_path( $blog['Old']['BlogID'] ), '\/' ) );
136
- $new_values[] = addslashes( addcslashes( ai1wm_blogsdir_path( $blog['New']['BlogID'] ), '\/' ) );
137
}
138
} else {
139
@@ -149,10 +161,16 @@ class Ai1wm_Import_Database {
149
$new_values[] = ai1wm_uploads_path( $blog['New']['BlogID'] );
150
}
151
152
- // Get escaped Upload Path
153
- if ( ! in_array( addslashes( addcslashes( ai1wm_blogsdir_path( $blog['Old']['BlogID'] ), '\/' ) ), $old_values ) ) {
154
- $old_values[] = addslashes( addcslashes( ai1wm_blogsdir_path( $blog['Old']['BlogID'] ), '\/' ) );
155
- $new_values[] = addslashes( addcslashes( ai1wm_uploads_path( $blog['New']['BlogID'] ), '\/' ) );
156
}
157
158
// Get Upload Path
@@ -161,10 +179,16 @@ class Ai1wm_Import_Database {
161
$new_values[] = ai1wm_uploads_path( $blog['New']['BlogID'] );
162
}
163
164
- // Get escaped Upload Path
165
- if ( ! in_array( addslashes( addcslashes( ai1wm_uploads_path( $blog['Old']['BlogID'] ), '\/' ) ), $old_values ) ) {
166
- $old_values[] = addslashes( addcslashes( ai1wm_uploads_path( $blog['Old']['BlogID'] ), '\/' ) );
167
- $new_values[] = addslashes( addcslashes( ai1wm_uploads_path( $blog['New']['BlogID'] ), '\/' ) );
168
}
169
}
170
}
@@ -219,7 +243,13 @@ class Ai1wm_Import_Database {
219
$new_values[] = urlencode( set_url_scheme( $blog['New']['SiteURL'], $new_scheme ) );
220
}
221
222
- // Add escaped Site URL
223
if ( ! in_array( addslashes( addcslashes( set_url_scheme( $site_url, $old_scheme ), '/' ) ), $old_values ) ) {
224
$old_values[] = addslashes( addcslashes( set_url_scheme( $site_url, $old_scheme ), '/' ) );
225
$new_values[] = addslashes( addcslashes( set_url_scheme( $blog['New']['SiteURL'], $new_scheme ), '/' ) );
@@ -286,7 +316,13 @@ class Ai1wm_Import_Database {
286
$new_values[] = urlencode( set_url_scheme( $blog['New']['HomeURL'], $new_scheme ) );
287
}
288
289
- // Add escaped Home URL
290
if ( ! in_array( addslashes( addcslashes( set_url_scheme( $home_url, $old_scheme ), '/' ) ), $old_values ) ) {
291
$old_values[] = addslashes( addcslashes( set_url_scheme( $home_url, $old_scheme ), '/' ) );
292
$new_values[] = addslashes( addcslashes( set_url_scheme( $blog['New']['HomeURL'], $new_scheme ), '/' ) );
@@ -364,7 +400,20 @@ class Ai1wm_Import_Database {
364
$new_values[] = urlencode( set_url_scheme( site_url(), $new_scheme ) );
365
}
366
367
- // Add escaped Site URL
368
if ( ! in_array( addslashes( addcslashes( set_url_scheme( $url, $old_scheme ), '/' ) ), $old_values ) ) {
369
$old_values[] = addslashes( addcslashes( set_url_scheme( $url, $old_scheme ), '/' ) );
370
$new_values[] = addslashes( addcslashes( set_url_scheme( site_url(), $new_scheme ), '/' ) );
@@ -442,7 +491,20 @@ class Ai1wm_Import_Database {
442
$new_values[] = urlencode( set_url_scheme( home_url(), $new_scheme ) );
443
}
444
445
- // Add escaped Home URL
446
if ( ! in_array( addslashes( addcslashes( set_url_scheme( $url, $old_scheme ), '/' ) ), $old_values ) ) {
447
$old_values[] = addslashes( addcslashes( set_url_scheme( $url, $old_scheme ), '/' ) );
448
$new_values[] = addslashes( addcslashes( set_url_scheme( home_url(), $new_scheme ), '/' ) );
@@ -478,10 +540,16 @@ class Ai1wm_Import_Database {
478
$new_values[] = urlencode( WP_CONTENT_DIR );
479
}
480
481
- // Add escaped WordPress Content
482
- if ( ! in_array( addslashes( addcslashes( $content_dir, '\/' ) ), $old_values ) ) {
483
- $old_values[] = addslashes( addcslashes( $content_dir, '\/' ) );
484
- $new_values[] = addslashes( addcslashes( WP_CONTENT_DIR, '\/' ) );
485
}
486
}
487
}
118
$new_values[] = ai1wm_blogsdir_path( $blog['New']['BlogID'] );
119
}
120
121
+ // Get forward slash escaped Upload Path
122
+ if ( ! in_array( addcslashes( ai1wm_blogsdir_path( $blog['Old']['BlogID'] ), '/' ), $old_values ) ) {
123
+ $old_values[] = addcslashes( ai1wm_blogsdir_path( $blog['Old']['BlogID'] ), '/' );
124
+ $new_values[] = addcslashes( ai1wm_blogsdir_path( $blog['New']['BlogID'] ), '/' );
125
+ }
126
+
127
+ // Get backward slash escaped Upload Path
128
+ if ( ! in_array( addslashes( addcslashes( ai1wm_blogsdir_path( $blog['Old']['BlogID'] ), '/' ) ), $old_values ) ) {
129
+ $old_values[] = addslashes( addcslashes( ai1wm_blogsdir_path( $blog['Old']['BlogID'] ), '/' ) );
130
+ $new_values[] = addslashes( addcslashes( ai1wm_blogsdir_path( $blog['New']['BlogID'] ), '/' ) );
131
}
132
133
// Get Upload Path
136
$new_values[] = ai1wm_blogsdir_path( $blog['New']['BlogID'] );
137
}
138
139
+ // Get forward slash escaped Upload Path
140
+ if ( ! in_array( addcslashes( ai1wm_uploads_path( $blog['Old']['BlogID'] ), '/' ), $old_values ) ) {
141
+ $old_values[] = addcslashes( ai1wm_uploads_path( $blog['Old']['BlogID'] ), '/' );
142
+ $new_values[] = addcslashes( ai1wm_blogsdir_path( $blog['New']['BlogID'] ), '/' );
143
+ }
144
+
145
+ // Get backward slash escaped Upload Path
146
+ if ( ! in_array( addslashes( addcslashes( ai1wm_uploads_path( $blog['Old']['BlogID'] ), '/' ) ), $old_values ) ) {
147
+ $old_values[] = addslashes( addcslashes( ai1wm_uploads_path( $blog['Old']['BlogID'] ), '/' ) );
148
+ $new_values[] = addslashes( addcslashes( ai1wm_blogsdir_path( $blog['New']['BlogID'] ), '/' ) );
149
}
150
} else {
151
161
$new_values[] = ai1wm_uploads_path( $blog['New']['BlogID'] );
162
}
163
164
+ // Get forward slash escaped Upload Path
165
+ if ( ! in_array( addcslashes( ai1wm_blogsdir_path( $blog['Old']['BlogID'] ), '/' ), $old_values ) ) {
166
+ $old_values[] = addcslashes( ai1wm_blogsdir_path( $blog['Old']['BlogID'] ), '/' );
167
+ $new_values[] = addcslashes( ai1wm_uploads_path( $blog['New']['BlogID'] ), '/' );
168
+ }
169
+
170
+ // Get backward slash escaped Upload Path
171
+ if ( ! in_array( addslashes( addcslashes( ai1wm_blogsdir_path( $blog['Old']['BlogID'] ), '/' ) ), $old_values ) ) {
172
+ $old_values[] = addslashes( addcslashes( ai1wm_blogsdir_path( $blog['Old']['BlogID'] ), '/' ) );
173
+ $new_values[] = addslashes( addcslashes( ai1wm_uploads_path( $blog['New']['BlogID'] ), '/' ) );
174
}
175
176
// Get Upload Path
179
$new_values[] = ai1wm_uploads_path( $blog['New']['BlogID'] );
180
}
181
182
+ // Get forward slash escaped Upload Path
183
+ if ( ! in_array( addcslashes( ai1wm_uploads_path( $blog['Old']['BlogID'] ), '/' ), $old_values ) ) {
184
+ $old_values[] = addcslashes( ai1wm_uploads_path( $blog['Old']['BlogID'] ), '/' );
185
+ $new_values[] = addcslashes( ai1wm_uploads_path( $blog['New']['BlogID'] ), '/' );
186
+ }
187
+
188
+ // Get backward slash escaped Upload Path
189
+ if ( ! in_array( addslashes( addcslashes( ai1wm_uploads_path( $blog['Old']['BlogID'] ), '/' ) ), $old_values ) ) {
190
+ $old_values[] = addslashes( addcslashes( ai1wm_uploads_path( $blog['Old']['BlogID'] ), '/' ) );
191
+ $new_values[] = addslashes( addcslashes( ai1wm_uploads_path( $blog['New']['BlogID'] ), '/' ) );
192
}
193
}
194
}
243
$new_values[] = urlencode( set_url_scheme( $blog['New']['SiteURL'], $new_scheme ) );
244
}
245
246
+ // Add forward slash escaped Site URL
247
+ if ( ! in_array( addcslashes( set_url_scheme( $site_url, $old_scheme ), '/' ), $old_values ) ) {
248
+ $old_values[] = addcslashes( set_url_scheme( $site_url, $old_scheme ), '/' );
249
+ $new_values[] = addcslashes( set_url_scheme( $blog['New']['SiteURL'], $new_scheme ), '/' );
250
+ }
251
+
252
+ // Add backward slash escaped Site URL
253
if ( ! in_array( addslashes( addcslashes( set_url_scheme( $site_url, $old_scheme ), '/' ) ), $old_values ) ) {
254
$old_values[] = addslashes( addcslashes( set_url_scheme( $site_url, $old_scheme ), '/' ) );
255
$new_values[] = addslashes( addcslashes( set_url_scheme( $blog['New']['SiteURL'], $new_scheme ), '/' ) );
316
$new_values[] = urlencode( set_url_scheme( $blog['New']['HomeURL'], $new_scheme ) );
317
}
318
319
+ // Add forward slash escaped Home URL
320
+ if ( ! in_array( addcslashes( set_url_scheme( $home_url, $old_scheme ), '/' ), $old_values ) ) {
321
+ $old_values[] = addcslashes( set_url_scheme( $home_url, $old_scheme ), '/' );
322
+ $new_values[] = addcslashes( set_url_scheme( $blog['New']['HomeURL'], $new_scheme ), '/' );
323
+ }
324
+
325
+ // Add backward slash escaped Home URL
326
if ( ! in_array( addslashes( addcslashes( set_url_scheme( $home_url, $old_scheme ), '/' ) ), $old_values ) ) {
327
$old_values[] = addslashes( addcslashes( set_url_scheme( $home_url, $old_scheme ), '/' ) );
328
$new_values[] = addslashes( addcslashes( set_url_scheme( $blog['New']['HomeURL'], $new_scheme ), '/' ) );
400
$new_values[] = urlencode( set_url_scheme( site_url(), $new_scheme ) );
401
}
402
403
+ // Add forward slash escaped Site URL
404
+ // This is needed for `json_encode('http://example.org')`
405
+ // When escaped, URLs can look like this: http:\/\/example.org
406
+ // We need to add this escaped URL so the logic in Ai1wm_Database::replace_table_values works
407
+ if ( ! in_array( addcslashes( set_url_scheme( $url, $old_scheme ), '/' ), $old_values ) ) {
408
+ $old_values[] = addcslashes( set_url_scheme( $url, $old_scheme ), '/' );
409
+ $new_values[] = addcslashes( set_url_scheme( site_url(), $new_scheme ), '/' );
410
+ }
411
+
412
+ // Add backward slash escaped Site URL
413
+ // This is needed for `Ai1wm_Database_Utility::escape_mysql(json_encode('http://example.org'))`
414
+ // When escaped, URLs can look like this: http:\\/\\/example.org
415
+ // We need to add this escaped URL so the logic in Ai1wm_Database::replace_table_values works
416
+ // We have a strpos in there that looks if the value in the database matches the searched value
417
if ( ! in_array( addslashes( addcslashes( set_url_scheme( $url, $old_scheme ), '/' ) ), $old_values ) ) {
418
$old_values[] = addslashes( addcslashes( set_url_scheme( $url, $old_scheme ), '/' ) );
419
$new_values[] = addslashes( addcslashes( set_url_scheme( site_url(), $new_scheme ), '/' ) );
491
$new_values[] = urlencode( set_url_scheme( home_url(), $new_scheme ) );
492
}
493
494
+ // Add forward slash escaped Home URL
495
+ // This is needed for `json_encode('http://example.org')`
496
+ // When escaped, URLs can look like this: http:\/\/example.org
497
+ // We need to add this escaped URL so the logic in Ai1wm_Database::replace_table_values works
498
+ if ( ! in_array( addcslashes( set_url_scheme( $url, $old_scheme ), '/' ), $old_values ) ) {
499
+ $old_values[] = addcslashes( set_url_scheme( $url, $old_scheme ), '/' );
500
+ $new_values[] = addcslashes( set_url_scheme( home_url(), $new_scheme ), '/' );
501
+ }
502
+
503
+ // Add backward slash escaped Home URL
504
+ // This is needed for `Ai1wm_Database_Utility::escape_mysql(json_encode('http://example.org'))`
505
+ // When escaped, URLs can look like this: http:\\/\\/example.org
506
+ // We need to add this escaped URL so the logic in Ai1wm_Database::replace_table_values works
507
+ // We have a strpos in there that looks if the value in the database matches the searched value
508
if ( ! in_array( addslashes( addcslashes( set_url_scheme( $url, $old_scheme ), '/' ) ), $old_values ) ) {
509
$old_values[] = addslashes( addcslashes( set_url_scheme( $url, $old_scheme ), '/' ) );
510
$new_values[] = addslashes( addcslashes( set_url_scheme( home_url(), $new_scheme ), '/' ) );
540
$new_values[] = urlencode( WP_CONTENT_DIR );
541
}
542
543
+ // Add forward slash escaped WordPress Content
544
+ if ( ! in_array( addcslashes( $content_dir, '/' ), $old_values ) ) {
545
+ $old_values[] = addcslashes( $content_dir, '/' );
546
+ $new_values[] = addcslashes( WP_CONTENT_DIR, '/' );
547
+ }
548
+
549
+ // Add backward slash escaped WordPress Content
550
+ if ( ! in_array( addslashes( addcslashes( $content_dir, '/' ) ), $old_values ) ) {
551
+ $old_values[] = addslashes( addcslashes( $content_dir, '/' ) );
552
+ $new_values[] = addslashes( addcslashes( WP_CONTENT_DIR, '/' ) );
553
}
554
}
555
}
lib/model/import/class-ai1wm-import-done.php CHANGED
@@ -124,7 +124,7 @@ class Ai1wm_Import_Done {
124
admin_url( 'options-permalink.php#submit' )
125
),
126
__(
127
- 'Your data has been imported successfuly!',
128
AI1WM_PLUGIN_NAME
129
)
130
);
124
admin_url( 'options-permalink.php#submit' )
125
),
126
__(
127
+ 'Your data has been imported successfully!',
128
AI1WM_PLUGIN_NAME
129
)
130
);
lib/vendor/servmask/database/class-ai1wm-database-utility.php CHANGED
@@ -101,10 +101,12 @@ class Ai1wm_Database_Utility {
101
* @return string
102
*/
103
public static function escape_mysql( $data ) {
104
- return str_replace(
105
- array( '\\', '\0', "\n", "\r", "\x1a", "'", '"', "\0" ),
106
- array( '\\\\', '\\0', "\\n", "\\r", '\Z', "\'", '\"', '\0' ),
107
- $data
108
);
109
}
110
@@ -115,10 +117,12 @@ class Ai1wm_Database_Utility {
115
* @return string
116
*/
117
public static function unescape_mysql( $data ) {
118
- return str_replace(
119
- array( '\\\\', '\\0', "\\n", "\\r", '\Z', "\'", '\"', '\0' ),
120
- array( '\\', '\0', "\n", "\r", "\x1a", "'", '"', "\0" ),
121
- $data
122
);
123
}
124
}
101
* @return string
102
*/
103
public static function escape_mysql( $data ) {
104
+ return strtr(
105
+ $data,
106
+ array_combine(
107
+ array( "\x00", "\n", "\r", '\\', "'", '"', "\x1a" ),
108
+ array( '\\0', '\\n', '\\r', '\\\\', "\\'", '\\"', '\\Z' )
109
+ )
110
);
111
}
112
117
* @return string
118
*/
119
public static function unescape_mysql( $data ) {
120
+ return strtr(
121
+ $data,
122
+ array_combine(
123
+ array( '\\0', '\\n', '\\r', '\\\\', "\\'", '\\"', '\\Z' ),
124
+ array( "\x00", "\n", "\r", '\\', "'", '"', "\x1a" )
125
+ )
126
);
127
}
128
}
readme.txt CHANGED
@@ -3,7 +3,7 @@ Contributors: yani.iliev, bangelov, pimjitsawang
3
Tags: move, transfer, copy, migrate, backup, clone, restore, db migration, migration, wordpress migration, website migration, database export, database import
4
Requires at least: 3.3
5
Tested up to: 4.7
6
- Stable tag: 6.46
7
License: GPLv2 or later
8
9
Move, transfer, copy, migrate, and backup a site with 1-click. Quick, easy, and reliable.
@@ -78,20 +78,33 @@ All in One WP Plugin is the first plugin to offer true mobile experience on Word
78
3. Plugin Menu
79
80
== Changelog ==
81
= 6.46 =
82
**Fixed**
83
* Domain replacement on import
84
* Invalid secret key check on import
85
86
= 6.45 =
87
**Changed**
88
* Better mechanism when enumerating files on import
89
90
**Fixed**
91
* Validation mechanism on export/import
92
93
= 6.44 =
94
**Added**
95
* PHP and DB version metadata in package.json
96
* Find/Replace values in package.json
97
* Internal Site URL and Internal Home URL in package.json
@@ -100,59 +113,72 @@ All in One WP Plugin is the first plugin to offer true mobile experience on Word
100
* Shutdown handler to catch fatal errors
101
102
**Changed**
103
* Replace TYPE with ENGINE keyword on database export
104
* Detect Site URL and Home URL in Find/Replace values
105
* Activate template and stylesheet on import
106
* Import database chunk by chunk to avoid timeout limitation
107
108
**Fixed**
109
* An issue on export/import when using HipHop for PHP
110
111
= 6.43 =
112
**Changed**
113
* Plugin tags and description
114
115
= 6.42 =
116
**Changed**
117
* Improved performance when exporting database
118
119
= 6.41 =
120
**Added**
121
* Support Visual Composer plugin
122
* Support Jetpack Photon module
123
124
**Changed**
125
* Improved Maria DB support
126
* Disable WordPress authentication checking during migration
127
* Clean any temporary files after migration
128
129
= 6.40 =
130
**Added**
131
* Separate action hook in advanced settings called "ai1wm_export_advanced_settings" to allow custom checkbox options on export
132
133
**Changed**
134
* Do not extract dropins files on import
135
* Do not exclude active plugins in package.json and multisite.json on export
136
* Do not show "Resolving URL address..." on export/import
137
138
**Fixed**
139
* An issue with large files on import
140
* An issue with inactive plugins option in advanced settings on export
141
142
= 6.39 =
143
**Added**
144
* Support for MariaDB
145
146
**Changed**
147
* Do not include package.json, multisite.json, blogs.json, database.sql and filemap.list files on export
148
* Remove HTTP Basic authentication from Backups page
149
150
**Fixed**
151
* An issue with unpacking archive on import
152
* An issue with inactivated plugins on import
153
154
= 6.38 =
155
**Added**
156
* Support for HyperDB plugin
157
* Support for RevSlider plugin
158
* Check available disk space during export/import
@@ -160,10 +186,12 @@ All in One WP Plugin is the first plugin to offer true mobile experience on Word
160
* WPRESS mime-type to web.config when the server is IIS
161
162
**Changed**
163
* Switch to AJAX from cURL on export/import
164
* Respect WordPress constants FS_CHMOD_DIR and FS_CHMOD_FILE on import
165
* Remove misleading available disk space information on "Backups" page
166
167
**Fixed**
168
* An issue related to generating archive and folder names
169
* An issue related to CSS styles on export page
3
Tags: move, transfer, copy, migrate, backup, clone, restore, db migration, migration, wordpress migration, website migration, database export, database import
4
Requires at least: 3.3
5
Tested up to: 4.7
6
+ Stable tag: 6.47
7
License: GPLv2 or later
8
9
Move, transfer, copy, migrate, and backup a site with 1-click. Quick, easy, and reliable.
78
3. Plugin Menu
79
80
== Changelog ==
81
+ = 6.47 =
82
+ **Added**
83
+
84
+ * Elementor plugin support
85
+
86
+ **Fixed**
87
+
88
+ * Site URL and Home URL replacement in JSON data
89
+
90
= 6.46 =
91
**Fixed**
92
+
93
* Domain replacement on import
94
* Invalid secret key check on import
95
96
= 6.45 =
97
**Changed**
98
+
99
* Better mechanism when enumerating files on import
100
101
**Fixed**
102
+
103
* Validation mechanism on export/import
104
105
= 6.44 =
106
**Added**
107
+
108
* PHP and DB version metadata in package.json
109
* Find/Replace values in package.json
110
* Internal Site URL and Internal Home URL in package.json
113
* Shutdown handler to catch fatal errors
114
115
**Changed**
116
+
117
* Replace TYPE with ENGINE keyword on database export
118
* Detect Site URL and Home URL in Find/Replace values
119
* Activate template and stylesheet on import
120
* Import database chunk by chunk to avoid timeout limitation
121
122
**Fixed**
123
+
124
* An issue on export/import when using HipHop for PHP
125
126
= 6.43 =
127
**Changed**
128
+
129
* Plugin tags and description
130
131
= 6.42 =
132
**Changed**
133
+
134
* Improved performance when exporting database
135
136
= 6.41 =
137
**Added**
138
+
139
* Support Visual Composer plugin
140
* Support Jetpack Photon module
141
142
**Changed**
143
+
144
* Improved Maria DB support
145
* Disable WordPress authentication checking during migration
146
* Clean any temporary files after migration
147
148
= 6.40 =
149
**Added**
150
+
151
* Separate action hook in advanced settings called "ai1wm_export_advanced_settings" to allow custom checkbox options on export
152
153
**Changed**
154
+
155
* Do not extract dropins files on import
156
* Do not exclude active plugins in package.json and multisite.json on export
157
* Do not show "Resolving URL address..." on export/import
158
159
**Fixed**
160
+
161
* An issue with large files on import
162
* An issue with inactive plugins option in advanced settings on export
163
164
= 6.39 =
165
**Added**
166
+
167
* Support for MariaDB
168
169
**Changed**
170
+
171
* Do not include package.json, multisite.json, blogs.json, database.sql and filemap.list files on export
172
* Remove HTTP Basic authentication from Backups page
173
174
**Fixed**
175
+
176
* An issue with unpacking archive on import
177
* An issue with inactivated plugins on import
178
179
= 6.38 =
180
**Added**
181
+
182
* Support for HyperDB plugin
183
* Support for RevSlider plugin
184
* Check available disk space during export/import
186
* WPRESS mime-type to web.config when the server is IIS
187
188
**Changed**
189
+
190
* Switch to AJAX from cURL on export/import
191
* Respect WordPress constants FS_CHMOD_DIR and FS_CHMOD_FILE on import
192
* Remove misleading available disk space information on "Backups" page
193
194
**Fixed**
195
+
196
* An issue related to generating archive and folder names
197
* An issue related to CSS styles on export page