Widget Importer & Exporter - Version 1.4

Version Description

Download this release

Release Info

Developer stevengliebe
Plugin Icon 128x128 Widget Importer & Exporter
Version 1.4
Comparing to
See all releases

Code changes from version 1.3.2 to 1.4

css/style.css CHANGED
@@ -40,3 +40,32 @@
40
  .wie-import-results-space {
41
  height: 8px;
42
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
40
  .wie-import-results-space {
41
  height: 8px;
42
  }
43
+
44
+ /* Box in footer */
45
+
46
+ .wie-box {
47
+ padding: 25px;
48
+ border: 1px solid #e5e5e5;
49
+ background-color: #fff;
50
+ }
51
+
52
+ p {
53
+ margin-bottom: 18px;
54
+ }
55
+
56
+ p:last-child {
57
+ margin-bottom: 0;
58
+ }
59
+
60
+ .wie-box h4 {
61
+ margin-top: 0;
62
+ }
63
+
64
+ #wie-support-project {
65
+ max-width: 560px;
66
+ margin: 18px 0;
67
+ }
68
+
69
+ #wie-support-project .button {
70
+ margin-right: 5px;
71
+ }
includes/admin.php ADDED
@@ -0,0 +1,94 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Admin Functions
4
+ *
5
+ * General admin area functions. Also see page.php.
6
+ *
7
+ * @package Widget_Importer_Exporter
8
+ * @subpackage Functions
9
+ * @copyright Copyright (c) 2017, churchthemes.com
10
+ * @link https://churchthemes.com/plugins/widget-importer-exporter
11
+ * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
12
+ * @since 1.4
13
+ */
14
+
15
+ // No direct access
16
+ if ( ! defined( 'ABSPATH' ) ) exit;
17
+
18
+ /**
19
+ * Add plugin action link
20
+ *
21
+ * Insert an "Import/Export" link into the plugin's action links (Plugin page's list)
22
+ *
23
+ * @since 1.4
24
+ * @param array $links Existing action links
25
+ * @return array Modified action links
26
+ */
27
+ function wie_add_plugin_action_link( $links ) {
28
+
29
+ // If has permission
30
+ if ( ! current_user_can( 'edit_theme_options' ) ) { // can manage Appearance > Widgets
31
+ return false;
32
+ }
33
+
34
+ // Have links array?
35
+ if ( is_array( $links ) ) {
36
+
37
+ // Append "Settings" link
38
+ $links[] = '<a href="' . esc_url( admin_url( 'tools.php?page=widget-importer-exporter' ) ) . '">' . esc_html( __( 'Import/Export', 'widget-importer-exporter' ) ) . '</a>';
39
+
40
+ }
41
+
42
+ return $links;
43
+
44
+ }
45
+
46
+ add_filter( 'plugin_action_links_' . plugin_basename( WIE_FILE ), 'wie_add_plugin_action_link' );
47
+
48
+ /**
49
+ * Add link on Widgets page
50
+ *
51
+ * Insert an "Import/Export" link on the Widgets screen after 'Manage with Live Preview'.
52
+ * This is done with JavaScript since there is no hook for this area.
53
+ *
54
+ * @since 1.4
55
+ */
56
+ function wie_add_widgets_screen_link() {
57
+
58
+ // Build link with same style as 'Manage with Live Preview'
59
+ $link_html = sprintf(
60
+ wp_kses(
61
+ ' <a href="%1$s" class="page-title-action">%2$s</a>',
62
+ array(
63
+ 'a' => array( // link tag only
64
+ 'href' => array(),
65
+ 'class' => array()
66
+ )
67
+ )
68
+ ),
69
+ esc_url( admin_url( 'tools.php?page=widget-importer-exporter' ) ),
70
+ esc_html( __( 'Import/Export', 'widget-importer-exporter' ) )
71
+ );
72
+
73
+ // Output JavaScript to insert link after 'Manage with Live Preview'
74
+ ?>
75
+
76
+ <script type="text/javascript">
77
+
78
+ jQuery( document ).ready( function( $ ) {
79
+
80
+ // Encode string for security
81
+ var link_html = <?php echo wp_json_encode( $link_html ); ?>;
82
+
83
+ // Insert after last button by title
84
+ $( '.page-title-action' ).last().after( link_html );
85
+
86
+ } );
87
+
88
+ </script>
89
+
90
+ <?php
91
+
92
+ }
93
+
94
+ add_action( 'admin_print_footer_scripts-widgets.php', 'wie_add_widgets_screen_link' ); // WP 4.6+
includes/import.php CHANGED
@@ -4,7 +4,7 @@
4
  *
5
  * @package Widget_Importer_Exporter
6
  * @subpackage Functions
7
- * @copyright Copyright (c) 2013 - 2015, churchthemes.com
8
  * @link https://churchthemes.com/plugins/widget-importer-exporter
9
  * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
10
  * @since 0.3
@@ -23,6 +23,10 @@ function wie_upload_import_file() {
23
  // Check nonce for security since form was posted
24
  if ( ! empty( $_POST ) && ! empty( $_FILES['wie_import_file'] ) && check_admin_referer( 'wie_import', 'wie_import_nonce' ) ) { // check_admin_referer prints fail page and dies
25
 
 
 
 
 
26
  // Uploaded file
27
  $uploaded_file = $_FILES['wie_import_file'];
28
 
@@ -156,7 +160,7 @@ function wie_import_data( $data ) {
156
  $sidebar_available = false;
157
  $use_sidebar_id = 'wp_inactive_widgets'; // add to inactive if sidebar does not exist in theme
158
  $sidebar_message_type = 'error';
159
- $sidebar_message = esc_html__( 'Sidebar does not exist in theme (using Inactive)', 'widget-importer-exporter' );
160
  }
161
 
162
  // Result for sidebar
@@ -191,7 +195,7 @@ function wie_import_data( $data ) {
191
  // Without this, they are imported as objects and cause fatal error on Widgets page
192
  // If this creates problems for plugins that do actually intend settings in objects then may need to consider other approach: https://wordpress.org/support/topic/problem-with-array-of-arrays
193
  // It is probably much more likely that arrays are used than objects, however
194
- $widget = json_decode( json_encode( $widget ), true );
195
 
196
  // Filter to modify settings array
197
  // This is preferred over the older wie_widget_settings filter above
@@ -256,6 +260,13 @@ function wie_import_data( $data ) {
256
 
257
  // Assign widget instance to sidebar
258
  $sidebars_widgets = get_option( 'sidebars_widgets' ); // which sidebars have which widgets, get fresh every time
 
 
 
 
 
 
 
259
  $new_instance_id = $id_base . '-' . $new_instance_id_number; // use ID number from new widget instance
260
  $sidebars_widgets[$use_sidebar_id][] = $new_instance_id; // add new instance to sidebar
261
  update_option( 'sidebars_widgets', $sidebars_widgets ); // save the amended data
4
  *
5
  * @package Widget_Importer_Exporter
6
  * @subpackage Functions
7
+ * @copyright Copyright (c) 2013 - 2017, churchthemes.com
8
  * @link https://churchthemes.com/plugins/widget-importer-exporter
9
  * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
10
  * @since 0.3
23
  // Check nonce for security since form was posted
24
  if ( ! empty( $_POST ) && ! empty( $_FILES['wie_import_file'] ) && check_admin_referer( 'wie_import', 'wie_import_nonce' ) ) { // check_admin_referer prints fail page and dies
25
 
26
+ // Workaround for upload bug in WordPress 4.7.1
27
+ // This will only be applied for WordPress 4.7.1. Other versions are not affected.
28
+ add_filter( 'wp_check_filetype_and_ext', 'wie_disable_real_mime_check', 10, 4 );
29
+
30
  // Uploaded file
31
  $uploaded_file = $_FILES['wie_import_file'];
32
 
160
  $sidebar_available = false;
161
  $use_sidebar_id = 'wp_inactive_widgets'; // add to inactive if sidebar does not exist in theme
162
  $sidebar_message_type = 'error';
163
+ $sidebar_message = esc_html__( 'Widget area does not exist in theme (using Inactive)', 'widget-importer-exporter' );
164
  }
165
 
166
  // Result for sidebar
195
  // Without this, they are imported as objects and cause fatal error on Widgets page
196
  // If this creates problems for plugins that do actually intend settings in objects then may need to consider other approach: https://wordpress.org/support/topic/problem-with-array-of-arrays
197
  // It is probably much more likely that arrays are used than objects, however
198
+ $widget = json_decode( wp_json_encode( $widget ), true );
199
 
200
  // Filter to modify settings array
201
  // This is preferred over the older wie_widget_settings filter above
260
 
261
  // Assign widget instance to sidebar
262
  $sidebars_widgets = get_option( 'sidebars_widgets' ); // which sidebars have which widgets, get fresh every time
263
+
264
+ // Avoid rarely fatal error when the option is an empty string
265
+ // https://github.com/churchthemes/widget-importer-exporter/pull/11
266
+ if ( ! $sidebars_widgets ) {
267
+ $sidebars_widgets = array();
268
+ }
269
+
270
  $new_instance_id = $id_base . '-' . $new_instance_id_number; // use ID number from new widget instance
271
  $sidebars_widgets[$use_sidebar_id][] = $new_instance_id; // add new instance to sidebar
272
  update_option( 'sidebars_widgets', $sidebars_widgets ); // save the amended data
includes/mime-types.php CHANGED
@@ -4,7 +4,7 @@
4
  *
5
  * @package Widget_Importer_Exporter
6
  * @subpackage Functions
7
- * @copyright Copyright (c) 2013, churchthemes.com
8
  * @link https://churchthemes.com/plugins/widget-importer-exporter
9
  * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
10
  * @since 0.1
@@ -31,3 +31,32 @@ function wie_add_mime_types( $mime_types ) {
31
  }
32
 
33
  add_filter( 'upload_mimes', 'wie_add_mime_types' );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4
  *
5
  * @package Widget_Importer_Exporter
6
  * @subpackage Functions
7
+ * @copyright Copyright (c) 2013 - 2017, churchthemes.com
8
  * @link https://churchthemes.com/plugins/widget-importer-exporter
9
  * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
10
  * @since 0.1
31
  }
32
 
33
  add_filter( 'upload_mimes', 'wie_add_mime_types' );
34
+
35
+ /**
36
+ * Disable real MIME check on WordPress 4.7.1
37
+ *
38
+ * This is a workaround for a WordPress 4.7.1 bug affecting uploads. Other versions not affected.
39
+ * This workaround will only take effect on installs of 4.7.1 and only during import.
40
+ *
41
+ * This is called in includes/import.php by wie_upload_import_file() so that it only happens during upload via this plugin.
42
+ * add_filter( 'wp_check_filetype_and_ext', 'wie_disable_real_mime_check', 10, 4 );
43
+ *
44
+ * Based on the Disable Real MIME Check plugin by Sergey Biryukov: https://wordpress.org/plugins/disable-real-mime-check/
45
+ * More information: https://wordpress.org/support/topic/solution-for-wp-4-7-1-bug-causing-you-must-upload-a-wie-file-generated-by/
46
+ */
47
+ function wie_disable_real_mime_check( $data, $file, $filename, $mimes ) {
48
+
49
+ // WordPress 4.7.1 only
50
+ if ( get_bloginfo( 'version' ) == '4.7.1' ) {
51
+ return;
52
+ }
53
+
54
+ $wp_filetype = wp_check_filetype( $filename, $mimes );
55
+
56
+ $ext = $wp_filetype['ext'];
57
+ $type = $wp_filetype['type'];
58
+ $proper_filename = $data['proper_filename'];
59
+
60
+ return compact( 'ext', 'type', 'proper_filename' );
61
+
62
+ }
includes/page.php CHANGED
@@ -4,7 +4,7 @@
4
  *
5
  * @package Widget_Importer_Exporter
6
  * @subpackage Functions
7
- * @copyright Copyright (c) 2013, churchthemes.com
8
  * @link https://churchthemes.com/plugins/widget-importer-exporter
9
  * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
10
  * @since 0.1
@@ -26,7 +26,7 @@ function wie_add_import_export_page() {
26
  $page_hook = add_management_page(
27
  esc_html__( 'Widget Importer & Exporter', 'widget-importer-exporter' ), // page title
28
  esc_html__( 'Widget Importer & Exporter', 'widget-importer-exporter' ), // menu title
29
- 'manage_options', // capability
30
  'widget-importer-exporter', // menu slug
31
  'wie_import_export_page_content' // callback for displaying page content
32
  );
@@ -65,8 +65,13 @@ function wie_import_export_page_content() {
65
  <?php
66
  // Show import results if have them
67
  if ( wie_have_import_results() ) {
 
68
  wie_show_import_results();
 
 
 
69
  return; // don't show content below
 
70
  }
71
  ?>
72
 
@@ -121,6 +126,8 @@ function wie_import_export_page_content() {
121
 
122
  <?php
123
 
 
 
124
  }
125
 
126
  /**
@@ -169,8 +176,8 @@ function wie_show_import_results() {
169
  )
170
  )
171
  ),
172
- admin_url( 'widgets.php' ),
173
- admin_url( basename( $_SERVER['PHP_SELF'] ) . '?page=' . $_GET['page'] )
174
  );
175
  ?>
176
  </p>
@@ -222,3 +229,90 @@ function wie_show_import_results() {
222
  <?php
223
 
224
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4
  *
5
  * @package Widget_Importer_Exporter
6
  * @subpackage Functions
7
+ * @copyright Copyright (c) 2013 - 2017, churchthemes.com
8
  * @link https://churchthemes.com/plugins/widget-importer-exporter
9
  * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
10
  * @since 0.1
26
  $page_hook = add_management_page(
27
  esc_html__( 'Widget Importer & Exporter', 'widget-importer-exporter' ), // page title
28
  esc_html__( 'Widget Importer & Exporter', 'widget-importer-exporter' ), // menu title
29
+ 'edit_theme_options', // capability (can manage Appearance > Widgets)
30
  'widget-importer-exporter', // menu slug
31
  'wie_import_export_page_content' // callback for displaying page content
32
  );
65
  <?php
66
  // Show import results if have them
67
  if ( wie_have_import_results() ) {
68
+
69
  wie_show_import_results();
70
+
71
+ wie_footer();
72
+
73
  return; // don't show content below
74
+
75
  }
76
  ?>
77
 
126
 
127
  <?php
128
 
129
+ wie_footer();
130
+
131
  }
132
 
133
  /**
176
  )
177
  )
178
  ),
179
+ esc_url( admin_url( 'widgets.php' ) ),
180
+ esc_url( admin_url( basename( $_SERVER['PHP_SELF'] ) . '?page=' . $_GET['page'] ) )
181
  );
182
  ?>
183
  </p>
229
  <?php
230
 
231
  }
232
+
233
+ /**
234
+ * Show footer
235
+ *
236
+ * Outputs information on supporting the project and getting support
237
+ */
238
+ function wie_footer() {
239
+
240
+ ?>
241
+
242
+ <div id="wie-support-project" class="wie-box">
243
+
244
+ <h4>Support This Project</h4>
245
+
246
+ <p>
247
+
248
+ <?php
249
+ printf(
250
+ wp_kses(
251
+ __( 'Please be one of the special few to support this plugin with a gift or review. There are costs to cover with more than 1,000,000 free downloads and free support. <b>Thank you!</b>', 'widget-importer-exporter' ),
252
+ array(
253
+ 'b' => array(),
254
+ )
255
+ ),
256
+ 'https://churchthemes.com/project-support/',
257
+ 'https://wordpress.org/support/plugin/widget-importer-exporter/reviews/?filter=5'
258
+ );
259
+ ?>
260
+
261
+ </p>
262
+
263
+ <p>
264
+ <a href="https://churchthemes.com/project-support/" class="button" target="_blank"><?php esc_html_e( 'Give $5 or More', 'widget-importer-exporter' ); ?></a>
265
+ <a href="https://wordpress.org/support/plugin/widget-importer-exporter/reviews/?filter=5" class="button" target="_blank"><?php esc_html_e( 'Add Your Review', 'widget-importer-exporter' ); ?></a>
266
+ </p>
267
+
268
+ <p>
269
+
270
+ <i>
271
+
272
+ <?php
273
+ printf(
274
+ wp_kses(
275
+ __( 'Visit <a href="%1$s" target="_blank">churchthemes.com</a> and follow us on <a href="%2$s" target="_blank">Twitter</a> and <a href="%3$s" target="_blank">Facebook</a>', 'widget-importer-exporter' ),
276
+ array(
277
+ 'a' => array(
278
+ 'href' => array(),
279
+ 'target' => array(),
280
+ ),
281
+ )
282
+ ),
283
+ 'https://churchthemes.com',
284
+ 'https://twitter.com/churchthemes',
285
+ 'https://www.facebook.com/churchthemescom'
286
+ );
287
+ ?>
288
+
289
+ </i>
290
+
291
+ </p>
292
+
293
+ </div>
294
+
295
+ <p id="wie-help">
296
+
297
+ <?php
298
+ printf(
299
+ wp_kses(
300
+ /* translators: %1$s is URL to support forum */
301
+ __( '<b>Need Help?</b> Post your question in the plugin\'s <a href="%1$s" target="_blank">Support Forum</a>.', 'widget-importer-exporter' ),
302
+ array(
303
+ 'b' => array(),
304
+ 'a' => array(
305
+ 'href' => array(),
306
+ 'target' => array(),
307
+ ),
308
+ )
309
+ ),
310
+ 'https://wordpress.org/support/plugin/widget-importer-exporter/'
311
+ );
312
+ ?>
313
+
314
+ </p>
315
+
316
+ <?php
317
+
318
+ }
languages/widget-importer-exporter.pot CHANGED
@@ -1,7 +1,8 @@
 
1
  msgid ""
2
  msgstr ""
3
  "Project-Id-Version: Widget Importer & Exporter\n"
4
- "POT-Creation-Date: 2015-02-23 09:31-0600\n"
5
  "PO-Revision-Date: 2015-02-23 09:31-0600\n"
6
  "Last-Translator: churchthemes.com\n"
7
  "Language-Team: \n"
@@ -9,7 +10,7 @@ msgstr ""
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=UTF-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
12
- "X-Generator: Poedit 1.7.4\n"
13
  "X-Poedit-KeywordsList: __;_e;_n:1,2;_nx:1,2;_x:1,2c;_ex:1,2c;esc_attr__;"
14
  "esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;"
15
  "_nx_noop:1,2,3c\n"
@@ -18,39 +19,43 @@ msgstr ""
18
  "X-Poedit-SourceCharset: UTF-8\n"
19
  "X-Poedit-SearchPath-0: ..\n"
20
 
21
- #: ../includes/import.php:34
 
 
 
 
22
  msgid "You must upload a <b>.wie</b> file generated by this plugin."
23
  msgstr ""
24
 
25
- #: ../includes/import.php:77
26
  msgid "Import file could not be found. Please try again."
27
  msgstr ""
28
 
29
- #: ../includes/import.php:112
30
  msgid "Import data could not be read. Please try a different file."
31
  msgstr ""
32
 
33
- #: ../includes/import.php:154
34
- msgid "Sidebar does not exist in theme (using Inactive)"
35
  msgstr ""
36
 
37
- #: ../includes/import.php:176
38
  msgid "Site does not support widget"
39
  msgstr ""
40
 
41
- #: ../includes/import.php:212
42
  msgid "Widget already exists"
43
  msgstr ""
44
 
45
- #: ../includes/import.php:261
46
  msgid "Imported"
47
  msgstr ""
48
 
49
- #: ../includes/import.php:264
50
  msgid "Imported to Inactive"
51
  msgstr ""
52
 
53
- #: ../includes/import.php:271
54
  msgid "No Title"
55
  msgstr ""
56
 
@@ -58,41 +63,71 @@ msgstr ""
58
  msgid "Widget Importer & Exporter"
59
  msgstr ""
60
 
61
- #: ../includes/page.php:73
62
  msgctxt "heading"
63
  msgid "Import Widgets"
64
  msgstr ""
65
 
66
- #: ../includes/page.php:76
67
  msgid "Please select a <b>.wie</b> file generated by this plugin."
68
  msgstr ""
69
 
70
- #: ../includes/page.php:85
71
  msgctxt "button"
72
  msgid "Import Widgets"
73
  msgstr ""
74
 
75
- #: ../includes/page.php:96
76
  msgctxt "heading"
77
  msgid "Export Widgets"
78
  msgstr ""
79
 
80
- #: ../includes/page.php:99
81
  msgid "Click below to generate a <b>.wie</b> file for all active widgets."
82
  msgstr ""
83
 
84
- #: ../includes/page.php:103
85
  msgctxt "button"
86
  msgid "Export Widgets"
87
  msgstr ""
88
 
89
- #: ../includes/page.php:145
90
  msgctxt "heading"
91
  msgid "Import Results"
92
  msgstr ""
93
 
94
- #: ../includes/page.php:150
95
  #, php-format
96
  msgid ""
97
  "You can manage your <a href=\"%s\">Widgets</a> or <a href=\"%s\">Go Back</a>."
98
  msgstr ""
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #, fuzzy
2
  msgid ""
3
  msgstr ""
4
  "Project-Id-Version: Widget Importer & Exporter\n"
5
+ "POT-Creation-Date: 2017-01-20 15:11-0600\n"
6
  "PO-Revision-Date: 2015-02-23 09:31-0600\n"
7
  "Last-Translator: churchthemes.com\n"
8
  "Language-Team: \n"
10
  "MIME-Version: 1.0\n"
11
  "Content-Type: text/plain; charset=UTF-8\n"
12
  "Content-Transfer-Encoding: 8bit\n"
13
+ "X-Generator: Poedit 1.8.11\n"
14
  "X-Poedit-KeywordsList: __;_e;_n:1,2;_nx:1,2;_x:1,2c;_ex:1,2c;esc_attr__;"
15
  "esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;"
16
  "_nx_noop:1,2,3c\n"
19
  "X-Poedit-SourceCharset: UTF-8\n"
20
  "X-Poedit-SearchPath-0: ..\n"
21
 
22
+ #: ../includes/admin.php:38 ../includes/admin.php:70
23
+ msgid "Import/Export"
24
+ msgstr ""
25
+
26
+ #: ../includes/import.php:39
27
  msgid "You must upload a <b>.wie</b> file generated by this plugin."
28
  msgstr ""
29
 
30
+ #: ../includes/import.php:86
31
  msgid "Import file could not be found. Please try again."
32
  msgstr ""
33
 
34
+ #: ../includes/import.php:121
35
  msgid "Import data could not be read. Please try a different file."
36
  msgstr ""
37
 
38
+ #: ../includes/import.php:163
39
+ msgid "Widget area does not exist in theme (using Inactive)"
40
  msgstr ""
41
 
42
+ #: ../includes/import.php:185
43
  msgid "Site does not support widget"
44
  msgstr ""
45
 
46
+ #: ../includes/import.php:221
47
  msgid "Widget already exists"
48
  msgstr ""
49
 
50
+ #: ../includes/import.php:283
51
  msgid "Imported"
52
  msgstr ""
53
 
54
+ #: ../includes/import.php:286
55
  msgid "Imported to Inactive"
56
  msgstr ""
57
 
58
+ #: ../includes/import.php:293
59
  msgid "No Title"
60
  msgstr ""
61
 
63
  msgid "Widget Importer & Exporter"
64
  msgstr ""
65
 
66
+ #: ../includes/page.php:78
67
  msgctxt "heading"
68
  msgid "Import Widgets"
69
  msgstr ""
70
 
71
+ #: ../includes/page.php:83
72
  msgid "Please select a <b>.wie</b> file generated by this plugin."
73
  msgstr ""
74
 
75
+ #: ../includes/page.php:97
76
  msgctxt "button"
77
  msgid "Import Widgets"
78
  msgstr ""
79
 
80
+ #: ../includes/page.php:108
81
  msgctxt "heading"
82
  msgid "Export Widgets"
83
  msgstr ""
84
 
85
+ #: ../includes/page.php:113
86
  msgid "Click below to generate a <b>.wie</b> file for all active widgets."
87
  msgstr ""
88
 
89
+ #: ../includes/page.php:122
90
  msgctxt "button"
91
  msgid "Export Widgets"
92
  msgstr ""
93
 
94
+ #: ../includes/page.php:166
95
  msgctxt "heading"
96
  msgid "Import Results"
97
  msgstr ""
98
 
99
+ #: ../includes/page.php:172
100
  #, php-format
101
  msgid ""
102
  "You can manage your <a href=\"%s\">Widgets</a> or <a href=\"%s\">Go Back</a>."
103
  msgstr ""
104
+
105
+ #: ../includes/page.php:251
106
+ msgid ""
107
+ "Please be one of the special few to support this plugin with a gift or "
108
+ "review. There are costs to cover with more than 1,000,000 free downloads and "
109
+ "free support. <b>Thank you!</b>"
110
+ msgstr ""
111
+
112
+ #: ../includes/page.php:264
113
+ msgid "Give $5 or More"
114
+ msgstr ""
115
+
116
+ #: ../includes/page.php:265
117
+ msgid "Add Your Review"
118
+ msgstr ""
119
+
120
+ #: ../includes/page.php:275
121
+ #, php-format
122
+ msgid ""
123
+ "Visit <a href=\"%1$s\" target=\"_blank\">churchthemes.com</a> and follow us "
124
+ "on <a href=\"%2$s\" target=\"_blank\">Twitter</a> and <a href=\"%3$s\" "
125
+ "target=\"_blank\">Facebook</a>"
126
+ msgstr ""
127
+
128
+ #: ../includes/page.php:301
129
+ #, php-format
130
+ msgid ""
131
+ "<b>Need Help?</b> Post your question in the plugin's <a href=\"%1$s\" target="
132
+ "\"_blank\">Support Forum</a>."
133
+ msgstr ""
readme.txt CHANGED
@@ -1,9 +1,10 @@
1
  === Widget Importer & Exporter ===
2
- Contributors: churchthemes, stevengliebe
 
3
  Tags: widgets, widget, importer, exporter, import, export, widget import, widget export, widget importer, widget exporter, backup, migration
4
  Requires at least: 3.5
5
- Tested up to: 4.7
6
- Stable tag: 1.3.2
7
  License: GPLv2 or later
8
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
9
 
@@ -15,9 +16,9 @@ Widget Importer & Exporter is useful for moving widgets from one WordPress site
15
 
16
  = Importing =
17
 
18
- Importing is a matter of uploading an export file created by the plugin. The results of an import are shown in a nicely formatted table with an explanation of what happened with each sidebar and widget.
19
 
20
- Importation takes into consideration sidebars not existing in the current theme (widgets imported as *Inactive*), widgets that already exist in the same sidebar (widgets not duplicated) and widgets that are not supported by the site (widgets not imported).
21
 
22
  = Exporting =
23
 
@@ -54,7 +55,7 @@ Please jump on [GitHub](https://github.com/churchthemes/widget-importer-exporter
54
 
55
  Please see [Installing Plugins](http://codex.wordpress.org/Managing_Plugins#Installing_Plugins) in the WordPress Codex.
56
 
57
- After activation, go to *Tools > Widget Import/Export*
58
 
59
  == Frequently Asked Questions ==
60
 
1
  === Widget Importer & Exporter ===
2
+ Contributors: churchthemes, stevengliebe, mauryaratan, wido
3
+ Donate link: https://churchthemes.com/project-support/
4
  Tags: widgets, widget, importer, exporter, import, export, widget import, widget export, widget importer, widget exporter, backup, migration
5
  Requires at least: 3.5
6
+ Tested up to: 4.7.1
7
+ Stable tag: 1.4
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
16
 
17
  = Importing =
18
 
19
+ Importing is a matter of uploading an export file created by the plugin. The results of an import are shown in a nicely formatted table with an explanation of what happened with each widget area (sidebar) and widget.
20
 
21
+ Importation takes into consideration widget areas not existing in the current theme (widgets imported as *Inactive*), widgets that already exist in the same widget area (widgets not duplicated) and widgets that are not supported by the site (widgets not imported).
22
 
23
  = Exporting =
24
 
55
 
56
  Please see [Installing Plugins](http://codex.wordpress.org/Managing_Plugins#Installing_Plugins) in the WordPress Codex.
57
 
58
+ After activation, go to *Tools > Widget Importer & Exporter*
59
 
60
  == Frequently Asked Questions ==
61
 
widget-importer-exporter.php CHANGED
@@ -3,7 +3,7 @@
3
  * Plugin Name: Widget Importer & Exporter
4
  * Plugin URI: https://churchthemes.com/plugins/widget-importer-exporter
5
  * Description: Imports and exports widgets.
6
- * Version: 1.3.2
7
  * Author: churchthemes.com
8
  * Author URI: https://churchthemes.com
9
  * License: http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
@@ -11,7 +11,7 @@
11
  * Domain Path: /languages
12
  *
13
  * @package Widget_Importer_Exporter
14
- * @copyright Copyright (c) 2013 - 2016, churchthemes.com
15
  * @link https://churchthemes.com/plugins/widget-importer-exporter
16
  * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
17
  */
@@ -168,6 +168,7 @@ class Widget_Importer_Exporter {
168
  'admin' => array(
169
 
170
  // Functions
 
171
  WIE_INC_DIR . '/export.php',
172
  WIE_INC_DIR . '/import.php',
173
  WIE_INC_DIR . '/mime-types.php',
3
  * Plugin Name: Widget Importer & Exporter
4
  * Plugin URI: https://churchthemes.com/plugins/widget-importer-exporter
5
  * Description: Imports and exports widgets.
6
+ * Version: 1.4
7
  * Author: churchthemes.com
8
  * Author URI: https://churchthemes.com
9
  * License: http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
11
  * Domain Path: /languages
12
  *
13
  * @package Widget_Importer_Exporter
14
+ * @copyright Copyright (c) 2013 - 2017, churchthemes.com
15
  * @link https://churchthemes.com/plugins/widget-importer-exporter
16
  * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
17
  */
168
  'admin' => array(
169
 
170
  // Functions
171
+ WIE_INC_DIR . '/admin.php',
172
  WIE_INC_DIR . '/export.php',
173
  WIE_INC_DIR . '/import.php',
174
  WIE_INC_DIR . '/mime-types.php',