WP Staging – DB & File Duplicator & Migration - Version 2.3.6

Version Description

  • Fix: Add version number to css and js files to prevent caching issues
  • Fix: Wrong text domain in a few language strings
  • Fix: Optimizer mu-plugin not installed all the time
  • Fix: Language files not loaded correctly
  • Fix: Remove heartbeat check only on wp staging admin pages
  • Fix: WordPress custom upload path variable upload_path could be wrong after cloning
  • Fix: Increase maximum memory consumption
Download this release

Release Info

Developer ReneHermi
Plugin Icon 128x128 WP Staging – DB & File Duplicator & Migration
Version 2.3.6
Comparing to
See all releases

Code changes from version 2.3.5 to 2.3.6

apps/Backend/Administrator.php CHANGED
@@ -80,6 +80,7 @@ class Administrator extends InjectionAware {
80
  $Welcome = new Activation\Welcome();
81
 
82
  $loader->addAction( "activated_plugin", $Activation, 'deactivate_other_instances' );
 
83
  $loader->addAction( "admin_menu", $this, "addMenu", 10 );
84
  $loader->addAction( "admin_init", $this, "setOptionFormElements" );
85
  $loader->addAction( "admin_init", $this, "upgrade" );
80
  $Welcome = new Activation\Welcome();
81
 
82
  $loader->addAction( "activated_plugin", $Activation, 'deactivate_other_instances' );
83
+ $loader->addAction( "activated_plugin", $Activation, 'install_dependancies' );
84
  $loader->addAction( "admin_menu", $this, "addMenu", 10 );
85
  $loader->addAction( "admin_init", $this, "setOptionFormElements" );
86
  $loader->addAction( "admin_init", $this, "upgrade" );
apps/Backend/Modules/Jobs/Data.php CHANGED
@@ -77,7 +77,7 @@ class Data extends JobExecutable {
77
  * @return void
78
  */
79
  protected function calculateTotalSteps() {
80
- $this->options->totalSteps = 12;
81
  }
82
 
83
  /**
@@ -198,7 +198,7 @@ class Data extends JobExecutable {
198
  $dir = str_replace( $home, '', $siteurl );
199
  return '/' . str_replace( '/', '', $dir ) . '/';
200
  }
201
-
202
  /**
203
  * Copy wp-config.php if it is located outside of root one level up
204
  * @todo Needs some more testing before it will be released
@@ -380,7 +380,7 @@ class Data extends JobExecutable {
380
  return true;
381
  }
382
 
383
- $this->debugLog("SQL: UPDATE {$this->prefix}usermeta SET meta_key = replace(meta_key, {$this->db->prefix}, {$this->prefix}) WHERE meta_key LIKE {$this->db->prefix}_%");
384
 
385
  $update = $this->db->query(
386
  $this->db->prepare(
@@ -716,6 +716,63 @@ class Data extends JobExecutable {
716
  return true;
717
  }
718
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
719
  /**
720
  * Return URL to staging site
721
  * @return string
77
  * @return void
78
  */
79
  protected function calculateTotalSteps() {
80
+ $this->options->totalSteps = 13;
81
  }
82
 
83
  /**
198
  $dir = str_replace( $home, '', $siteurl );
199
  return '/' . str_replace( '/', '', $dir ) . '/';
200
  }
201
+
202
  /**
203
  * Copy wp-config.php if it is located outside of root one level up
204
  * @todo Needs some more testing before it will be released
380
  return true;
381
  }
382
 
383
+ $this->debugLog( "SQL: UPDATE {$this->prefix}usermeta SET meta_key = replace(meta_key, {$this->db->prefix}, {$this->prefix}) WHERE meta_key LIKE {$this->db->prefix}_%" );
384
 
385
  $update = $this->db->query(
386
  $this->db->prepare(
716
  return true;
717
  }
718
 
719
+ /**
720
+ * Change upload_path in wp_options (if it is defined)
721
+ * @return bool
722
+ */
723
+ protected function step13() {
724
+ $this->log( "Preparing Data Step13: Updating upload_path {$this->prefix}options." );
725
+
726
+ // Skip - Table does not exist
727
+ if( false === $this->isTable( $this->prefix . 'options' ) ) {
728
+ return true;
729
+ }
730
+
731
+ $newUploadPath = $this->getNewUploadPath();
732
+
733
+ if( false === $newUploadPath ) {
734
+ $this->log( "Preparing Data Step13: Skipping" );
735
+ return true;
736
+ }
737
+
738
+ // Skip - Table is not selected or updated
739
+ if( !in_array( $this->prefix . 'options', $this->tables ) ) {
740
+ $this->log( "Preparing Data Step13: Skipping" );
741
+ return true;
742
+ }
743
+
744
+ $error = isset( $this->db->last_error ) ? 'Last error: ' . $this->db->last_error : '';
745
+
746
+ $this->log( "Updating upload_path in {$this->prefix}options. {$error}" );
747
+
748
+ $updateOptions = $this->db->query(
749
+ $this->db->prepare(
750
+ "UPDATE {$this->prefix}options SET option_value = %s WHERE option_name = 'upload_path'", $newUploadPath
751
+ )
752
+ );
753
+
754
+ if( !$updateOptions ) {
755
+ $this->log( "Preparing Data Step13: Failed to update upload_path in {$this->prefix}options. {$error}", Logger::TYPE_ERROR );
756
+ return true;
757
+ }
758
+ $this->Log( "Preparing Data: Finished Step 13 successfully" );
759
+ return true;
760
+ }
761
+
762
+ protected function getNewUploadPath() {
763
+ $uploadPath = get_option( 'upload_path' );
764
+
765
+ if( !$uploadPath ) {
766
+ return false;
767
+ }
768
+
769
+ $customSlug = str_replace( \WPStaging\WPStaging::getWPpath(), '', $uploadPath );
770
+
771
+ $newUploadPath = \WPStaging\WPStaging::getWPpath() . $this->options->cloneDirectoryName . DIRECTORY_SEPARATOR . $customSlug;
772
+
773
+ return $newUploadPath;
774
+ }
775
+
776
  /**
777
  * Return URL to staging site
778
  * @return string
apps/Backend/Modules/Jobs/Directories.php CHANGED
@@ -393,8 +393,8 @@ class Directories extends JobExecutable {
393
 
394
  $file_handle = @fopen( $file, $mode );
395
  if( false === $file_handle ) {
396
- $this->returnException( sprintf( __( 'Unable to open %s with mode %s', 'wpstg' ), $file, $mode ) );
397
- //throw new Exception(sprintf(__('Unable to open %s with mode %s', 'wpstg'), $file, $mode));
398
  }
399
 
400
  return $file_handle;
@@ -413,12 +413,12 @@ class Directories extends JobExecutable {
413
  $write_result = @fwrite( $handle, $content );
414
  if( false === $write_result ) {
415
  if( ( $meta = \stream_get_meta_data( $handle ) ) ) {
416
- //$this->returnException(sprintf(__('Unable to write to: %s', 'wpstg'), $meta['uri']));
417
- throw new \Exception( sprintf( __( 'Unable to write to: %s', 'wpstg' ), $meta['uri'] ) );
418
  }
419
  } elseif( strlen( $content ) !== $write_result ) {
420
- //$this->returnException(__('Out of disk space.', 'wpstg'));
421
- throw new \Exception( __( 'Out of disk space.', 'wpstg' ) );
422
  }
423
 
424
  return $write_result;
393
 
394
  $file_handle = @fopen( $file, $mode );
395
  if( false === $file_handle ) {
396
+ $this->returnException( sprintf( __( 'Unable to open %s with mode %s', 'wp-staging' ), $file, $mode ) );
397
+ //throw new Exception(sprintf(__('Unable to open %s with mode %s', 'wp-staging'), $file, $mode));
398
  }
399
 
400
  return $file_handle;
413
  $write_result = @fwrite( $handle, $content );
414
  if( false === $write_result ) {
415
  if( ( $meta = \stream_get_meta_data( $handle ) ) ) {
416
+ //$this->returnException(sprintf(__('Unable to write to: %s', 'wp-staging'), $meta['uri']));
417
+ throw new \Exception( sprintf( __( 'Unable to write to: %s', 'wp-staging' ), $meta['uri'] ) );
418
  }
419
  } elseif( strlen( $content ) !== $write_result ) {
420
+ //$this->returnException(__('Out of disk space.', 'wp-staging'));
421
+ throw new \Exception( __( 'Out of disk space.', 'wp-staging' ) );
422
  }
423
 
424
  return $write_result;
apps/Backend/Modules/Jobs/Job.php CHANGED
@@ -20,7 +20,7 @@ use WPStaging\Utils\Multisite;
20
  abstract class Job implements JobInterface {
21
 
22
  const EXECUTION_TIME_RATIO = 0.8;
23
- const MAX_MEMORY_RATIO = 0.8;
24
 
25
  /**
26
  * @var Cache
20
  abstract class Job implements JobInterface {
21
 
22
  const EXECUTION_TIME_RATIO = 0.8;
23
+ const MAX_MEMORY_RATIO = 1;
24
 
25
  /**
26
  * @var Cache
apps/Backend/Modules/Jobs/Multisite/Directories.php CHANGED
@@ -457,8 +457,8 @@ class Directories extends JobExecutable {
457
 
458
  $file_handle = @fopen( $file, $mode );
459
  if( false === $file_handle ) {
460
- $this->returnException( sprintf( __( 'Unable to open %s with mode %s', 'wpstg' ), $file, $mode ) );
461
- //throw new Exception(sprintf(__('Unable to open %s with mode %s', 'wpstg'), $file, $mode));
462
  }
463
 
464
  return $file_handle;
@@ -477,12 +477,12 @@ class Directories extends JobExecutable {
477
  $write_result = @fwrite( $handle, $content );
478
  if( false === $write_result ) {
479
  if( ( $meta = \stream_get_meta_data( $handle ) ) ) {
480
- //$this->returnException(sprintf(__('Unable to write to: %s', 'wpstg'), $meta['uri']));
481
- throw new \Exception( sprintf( __( 'Unable to write to: %s', 'wpstg' ), $meta['uri'] ) );
482
  }
483
  } elseif( strlen( $content ) !== $write_result ) {
484
- //$this->returnException(__('Out of disk space.', 'wpstg'));
485
- throw new \Exception( __( 'Out of disk space.', 'wpstg' ) );
486
  }
487
 
488
  return $write_result;
457
 
458
  $file_handle = @fopen( $file, $mode );
459
  if( false === $file_handle ) {
460
+ $this->returnException( sprintf( __( 'Unable to open %s with mode %s', 'wp-staging' ), $file, $mode ) );
461
+ //throw new Exception(sprintf(__('Unable to open %s with mode %s', 'wp-staging'), $file, $mode));
462
  }
463
 
464
  return $file_handle;
477
  $write_result = @fwrite( $handle, $content );
478
  if( false === $write_result ) {
479
  if( ( $meta = \stream_get_meta_data( $handle ) ) ) {
480
+ //$this->returnException(sprintf(__('Unable to write to: %s', 'wp-staging'), $meta['uri']));
481
+ throw new \Exception( sprintf( __( 'Unable to write to: %s', 'wp-staging' ), $meta['uri'] ) );
482
  }
483
  } elseif( strlen( $content ) !== $write_result ) {
484
+ //$this->returnException(__('Out of disk space.', 'wp-staging'));
485
+ throw new \Exception( __( 'Out of disk space.', 'wp-staging' ) );
486
  }
487
 
488
  return $write_result;
apps/Backend/Modules/Jobs/SearchReplace.php CHANGED
@@ -293,6 +293,7 @@ class SearchReplace extends JobExecutable {
293
  'Admin_custome_login_top',
294
  'Admin_custome_login_dashboard',
295
  'Admin_custome_login_Version',
 
296
  );
297
 
298
  $filter = apply_filters( 'wpstg_clone_searchreplace_excl_rows', $filter );
293
  'Admin_custome_login_top',
294
  'Admin_custome_login_dashboard',
295
  'Admin_custome_login_Version',
296
+ 'upload_path'
297
  );
298
 
299
  $filter = apply_filters( 'wpstg_clone_searchreplace_excl_rows', $filter );
apps/Backend/Notices/Notices.php CHANGED
@@ -140,9 +140,9 @@ class Notices {
140
  private function plugin_deactivated_notice() {
141
  if( false !== ( $deactivated_notice_id = get_transient( 'wp_staging_deactivated_notice_id' ) ) ) {
142
  if( '1' === $deactivated_notice_id ) {
143
- $message = __( "WP Staging and WP Staging Pro cannot both be active. We've automatically deactivated WP Staging.", 'wpstg' );
144
  } else {
145
- $message = __( "WP Staging and WP Staging Pro cannot both be active. We've automatically deactivated WP Staging Pro.", 'wpstg' );
146
  }
147
  ?>
148
  <div class="updated notice is-dismissible" style="border-left: 4px solid #ffba00;">
140
  private function plugin_deactivated_notice() {
141
  if( false !== ( $deactivated_notice_id = get_transient( 'wp_staging_deactivated_notice_id' ) ) ) {
142
  if( '1' === $deactivated_notice_id ) {
143
+ $message = __( "WP Staging and WP Staging Pro cannot both be active. We've automatically deactivated WP Staging.", 'wp-staging' );
144
  } else {
145
+ $message = __( "WP Staging and WP Staging Pro cannot both be active. We've automatically deactivated WP Staging Pro.", 'wp-staging' );
146
  }
147
  ?>
148
  <div class="updated notice is-dismissible" style="border-left: 4px solid #ffba00;">
apps/Backend/Pluginmeta/Pluginmeta.php CHANGED
@@ -39,7 +39,7 @@ class Pluginmeta {
39
  * @return array $links
40
  */
41
  public function actionLinks( $links, $file ) {
42
- $settings_link = '<a href="' . admin_url( 'admin.php?page=wpstg-settings' ) . '">' . esc_html__( 'Settings', 'wpstg' ) . '</a>';
43
  if( $file == 'wp-staging/wp-staging.php' || $file == 'wp-staging-pro/wp-staging-pro.php')
44
  array_unshift( $links, $settings_link );
45
  return $links;
@@ -60,7 +60,7 @@ class Pluginmeta {
60
  }
61
 
62
  $links = array(
63
- '<a href="' . admin_url( 'admin.php?page=wpstg_clone' ) . '">' . esc_html__( 'Start Now', 'wpstg' ) . '</a>',
64
  );
65
  $input = array_merge( $input, $links );
66
  return $input;
39
  * @return array $links
40
  */
41
  public function actionLinks( $links, $file ) {
42
+ $settings_link = '<a href="' . admin_url( 'admin.php?page=wpstg-settings' ) . '">' . esc_html__( 'Settings', 'wp-staging' ) . '</a>';
43
  if( $file == 'wp-staging/wp-staging.php' || $file == 'wp-staging-pro/wp-staging-pro.php')
44
  array_unshift( $links, $settings_link );
45
  return $links;
60
  }
61
 
62
  $links = array(
63
+ '<a href="' . admin_url( 'admin.php?page=wpstg_clone' ) . '">' . esc_html__( 'Start Now', 'wp-staging' ) . '</a>',
64
  );
65
  $input = array_merge( $input, $links );
66
  return $input;
apps/Backend/views/_includes/header.php CHANGED
@@ -11,21 +11,21 @@
11
  <div class='wpstg-share-button wpstg-share-button-twitter' data-share-url="https://wordpress.org/plugins/wp-staging">
12
  <div clas='box'>
13
  <a href="https://twitter.com/intent/tweet?button_hashtag=wpstaging&text=Check%20out%20this%20plugin%20for%20creating%20a%20one%20click%20WordPress%20testing%20site&via=wpstg" target='_blank'>
14
- <span class='wpstg-share'><?php echo __('Tweet #wpstaging','wpstg'); ?></span>
15
  </a>
16
  </div>
17
  </div>
18
  <div class="wpstg-share-button wpstg-share-button-twitter">
19
  <div class="box">
20
  <a href="https://twitter.com/intent/follow?original_referer=http%3A%2F%2Fsrc.wordpress-develop.dev%2Fwp-admin%2Fadmin.php%3Fpage%3Dwpstg-settings&ref_src=twsrc%5Etfw&region=follow_link&screen_name=renehermenau&tw_p=followbutton" target="_blank">
21
- <span class='wpstg-share'><?php echo __('Follow @wpstaging','wpstg'); ?></span>
22
  </a>
23
  </div>
24
  </div>
25
  <div class="wpstg-share-button wpstg-share-button-facebook" data-share-url="https://wordpress.org/plugins/wp-staging">
26
  <div class="box">
27
  <a href="https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fwordpress.org%2Fplugins%2Fwp-staging" target="_blank">
28
- <span class='wpstg-share'><?php echo __('Share on Facebook','wpstg'); ?></span>
29
  </a>
30
  </div>
31
  </div>
11
  <div class='wpstg-share-button wpstg-share-button-twitter' data-share-url="https://wordpress.org/plugins/wp-staging">
12
  <div clas='box'>
13
  <a href="https://twitter.com/intent/tweet?button_hashtag=wpstaging&text=Check%20out%20this%20plugin%20for%20creating%20a%20one%20click%20WordPress%20testing%20site&via=wpstg" target='_blank'>
14
+ <span class='wpstg-share'><?php echo __('Tweet #wpstaging','wp-staging'); ?></span>
15
  </a>
16
  </div>
17
  </div>
18
  <div class="wpstg-share-button wpstg-share-button-twitter">
19
  <div class="box">
20
  <a href="https://twitter.com/intent/follow?original_referer=http%3A%2F%2Fsrc.wordpress-develop.dev%2Fwp-admin%2Fadmin.php%3Fpage%3Dwpstg-settings&ref_src=twsrc%5Etfw&region=follow_link&screen_name=renehermenau&tw_p=followbutton" target="_blank">
21
+ <span class='wpstg-share'><?php echo __('Follow @wpstaging','wp-staging'); ?></span>
22
  </a>
23
  </div>
24
  </div>
25
  <div class="wpstg-share-button wpstg-share-button-facebook" data-share-url="https://wordpress.org/plugins/wp-staging">
26
  <div class="box">
27
  <a href="https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fwordpress.org%2Fplugins%2Fwp-staging" target="_blank">
28
+ <span class='wpstg-share'><?php echo __('Share on Facebook','wp-staging'); ?></span>
29
  </a>
30
  </div>
31
  </div>
apps/Backend/views/_includes/messages/rating.php CHANGED
@@ -1,10 +1,10 @@
1
  <div class="wpstg_fivestar updated" style="box-shadow: 0 1px 1px 0 rgba(0,0,0,.1);border-left:none;background-color:#59a7f7;color:white;">
2
  <p><?php _e(' Awesome, you\'ve been using <strong>WP Staging </strong> for more than 1 week.
3
- May I ask you to give it a <strong>5-star</strong> rating on Wordpress?', 'wpstg'); ?>
4
  <br><br>
5
  <?php echo sprintf(__('P.S. Looking for a way to migrate the staging site database and copy plugins and theme files from staging to live site?<br/>
6
  Try out <a href="%1$s" target="_blank" style="color:white;font-weight:bold;">WP Staging Pro</a>
7
- ', 'wpstg'), 'https://wp-staging.com/?utm_source=wpstg_admin&utm_medium=rating_screen&utm_campaign=admin_notice');?>
8
  <br>
9
  </p>
10
  <p>
@@ -14,17 +14,17 @@
14
  <ul>
15
  <li>
16
  <a href="https://wordpress.org/support/plugin/wp-staging/reviews/?filter=5#new-post" class="thankyou button" target="_new" title="Ok, you deserved it" style="font-weight:bold;">
17
- <?php _e('Ok, you deserved it','wpstg')?>
18
  </a>
19
  </li>
20
  <li>
21
  <a href="javascript:void(0);" class="wpstg_hide_rating" title="I already did" style="font-weight:normal;color:white;">
22
- <?php _e('I already did','wpstg')?>
23
  </a>
24
  </li>
25
  <li>
26
  <a href="javascript:void(0);" class="wpstg_hide_rating" title="No, not good enough" style="font-weight:normal;color:white;">
27
- <?php _e('No, not good enough','wpstg')?>
28
  </a>
29
  </li>
30
  </ul>
1
  <div class="wpstg_fivestar updated" style="box-shadow: 0 1px 1px 0 rgba(0,0,0,.1);border-left:none;background-color:#59a7f7;color:white;">
2
  <p><?php _e(' Awesome, you\'ve been using <strong>WP Staging </strong> for more than 1 week.
3
+ May I ask you to give it a <strong>5-star</strong> rating on Wordpress?', 'wp-staging'); ?>
4
  <br><br>
5
  <?php echo sprintf(__('P.S. Looking for a way to migrate the staging site database and copy plugins and theme files from staging to live site?<br/>
6
  Try out <a href="%1$s" target="_blank" style="color:white;font-weight:bold;">WP Staging Pro</a>
7
+ ', 'wp-staging'), 'https://wp-staging.com/?utm_source=wpstg_admin&utm_medium=rating_screen&utm_campaign=admin_notice');?>
8
  <br>
9
  </p>
10
  <p>
14
  <ul>
15
  <li>
16
  <a href="https://wordpress.org/support/plugin/wp-staging/reviews/?filter=5#new-post" class="thankyou button" target="_new" title="Ok, you deserved it" style="font-weight:bold;">
17
+ <?php _e('Ok, you deserved it','wp-staging')?>
18
  </a>
19
  </li>
20
  <li>
21
  <a href="javascript:void(0);" class="wpstg_hide_rating" title="I already did" style="font-weight:normal;color:white;">
22
+ <?php _e('I already did','wp-staging')?>
23
  </a>
24
  </li>
25
  <li>
26
  <a href="javascript:void(0);" class="wpstg_hide_rating" title="No, not good enough" style="font-weight:normal;color:white;">
27
+ <?php _e('No, not good enough','wp-staging')?>
28
  </a>
29
  </li>
30
  </ul>
apps/Backend/views/_includes/messages/staging-directory-permission-problem.php CHANGED
@@ -4,8 +4,8 @@
4
  <?php echo sprintf(__('WP Staging Folder Permission error:</strong>
5
  %1$s is not write and/or readable.
6
  <br>
7
- Check if the folder <strong>%1$s</strong> is writeable by php user www-data.
8
- File permissions should be chmod 755 or 777.','wpstg'), ABSPATH );
9
  ?>
10
  </p>
11
  </div>
4
  <?php echo sprintf(__('WP Staging Folder Permission error:</strong>
5
  %1$s is not write and/or readable.
6
  <br>
7
+ Check if the folder <strong>%1$s</strong> is writeable by php user %2$s or www-data .
8
+ File permissions should be chmod 755 or 777.','wp-staging'), ABSPATH, getenv('USERNAME') ?: getenv('USER') );
9
  ?>
10
  </p>
11
  </div>
apps/Backend/views/_includes/messages/wp-version-compatible-message.php CHANGED
@@ -6,7 +6,7 @@
6
  '<br/>As WP Staging is using crucial DB and file functions it\'s important that you are using a ' .
7
  'WP Staging version <br> which has been verified to be working with your WordPress version. ' .
8
  'You risk unexpected data lose if you do not so! ' .
9
- '<p><strong>Get the latest WP Staging plugin from <a href="%1$s" target="_blank">https://wp-staging.com</a>.</strong>', 'wpstg'), 'https://wp-staging.com', get_bloginfo( 'version' )
10
  );
11
  ?>
12
  </p>
6
  '<br/>As WP Staging is using crucial DB and file functions it\'s important that you are using a ' .
7
  'WP Staging version <br> which has been verified to be working with your WordPress version. ' .
8
  'You risk unexpected data lose if you do not so! ' .
9
+ '<p><strong>Get the latest WP Staging plugin from <a href="%1$s" target="_blank">https://wp-staging.com</a>.</strong>', 'wp-staging'), 'https://wp-staging.com', get_bloginfo( 'version' )
10
  );
11
  ?>
12
  </p>
apps/Backend/views/_includes/report-issue.php CHANGED
@@ -23,7 +23,7 @@
23
  <div class="wpstg-field">
24
  <div class="wpstg-buttons">
25
  <button type="submit" id="wpstg-report-submit" class="wpstg-form-submit button-primary wpstg-button">
26
- <?php _e( 'Send Issue', 'wp-staging' ); ?>
27
  </button>
28
  <span class="spinner"></span>
29
  <a href="#" id="wpstg-report-cancel" class="wpstg-report-cancel">Close</a>
23
  <div class="wpstg-field">
24
  <div class="wpstg-buttons">
25
  <button type="submit" id="wpstg-report-submit" class="wpstg-form-submit button-primary wpstg-button">
26
+ <?php _e( 'Submit', 'wp-staging' ); ?>
27
  </button>
28
  <span class="spinner"></span>
29
  <a href="#" id="wpstg-report-cancel" class="wpstg-report-cancel">Close</a>
apps/Backend/views/clone/ajax/delete-confirmation.php CHANGED
@@ -6,7 +6,7 @@
6
  </h4>
7
 
8
  <p>
9
- <?php _e('Clone name:', 'wpstg'); ?>
10
  <span style="background-color:#575757;color:#fff;">
11
  <?php echo $clone->directoryName; ?>
12
  </span>
@@ -17,7 +17,7 @@
17
  _e(
18
  'Usually the preselected data can be deleted without any risk '.
19
  'but in case something goes wrong you better check it first.',
20
- 'wpstg'
21
  );
22
  ?>
23
  </p>
6
  </h4>
7
 
8
  <p>
9
+ <?php _e('Clone name:', 'wp-staging'); ?>
10
  <span style="background-color:#575757;color:#fff;">
11
  <?php echo $clone->directoryName; ?>
12
  </span>
17
  _e(
18
  'Usually the preselected data can be deleted without any risk '.
19
  'but in case something goes wrong you better check it first.',
20
+ 'wp-staging'
21
  );
22
  ?>
23
  </p>
apps/Backend/views/clone/ajax/scan.php CHANGED
@@ -1,5 +1,5 @@
1
  <label id="wpstg-clone-label" for="wpstg-new-clone">
2
- <?php echo __('Staging Site Name:', 'wpstg')?>
3
  <input type="text" id="wpstg-new-clone-id" value="<?php echo $options->current; ?>"<?php if (null !== $options->current) echo " disabled='disabled'"?>>
4
  </label>
5
 
@@ -29,7 +29,7 @@
29
  </h4>
30
  <div style="margin-top:10px;margin-bottom:10px;">
31
  <a href="#" class="wpstg-button-unselect button"> None </a>
32
- <a href="#" class="wpstg-button-select button"> <?php _e(WPStaging\WPStaging::getTablePrefix(), 'wpstg'); ?> </a>
33
  </div>
34
  <?php
35
  //print_r( $options->excludedTables);
@@ -49,7 +49,7 @@
49
  <?php endforeach ?>
50
  <div style="margin-top:10px;">
51
  <a href="#" class="wpstg-button-unselect button"> None </a>
52
- <a href="#" class="wpstg-button-select button"> <?php _e(WPStaging\WPStaging::getTablePrefix(), 'wpstg'); ?> </a>
53
  </div>
54
  </div>
55
 
@@ -101,13 +101,13 @@
101
  <div class="wpstg-tab-section" id="wpstg-advanced-settings">
102
  <p>
103
  <?php
104
- _e('<strong>Important:</strong> Are you using a custom login url?', 'wpstg');
105
  echo '<br/>';
106
- echo sprintf(__('Set up first <a href="%1$s"><strong>Login Custom Link</strong></a> if login to the admin dashboard is not reachable from the default url below:<pre>%2$s</pre>', 'wpstg'),
107
  admin_url() . '/admin.php?page=wpstg-settings#wpstg_settings[loginSlug]',
108
  admin_url()
109
  );
110
- _e('<strong>If you do not do that step, the staging site could be unavailable!</strong>', 'wpstg');
111
  //$form = $this->di->get("forms")->get("general");
112
  //echo $form->label("wpstg_settings['loginPostId']");
113
  //echo $form->render("wpstg_settings['loginPostId']");
@@ -139,4 +139,4 @@
139
  }
140
  ?>
141
 
142
- <a href="#" id="wpstg-check-space"><?php _e('Check Disk Space', 'wpstg'); ?></a>
1
  <label id="wpstg-clone-label" for="wpstg-new-clone">
2
+ <?php echo __('Staging Site Name:', 'wp-staging')?>
3
  <input type="text" id="wpstg-new-clone-id" value="<?php echo $options->current; ?>"<?php if (null !== $options->current) echo " disabled='disabled'"?>>
4
  </label>
5
 
29
  </h4>
30
  <div style="margin-top:10px;margin-bottom:10px;">
31
  <a href="#" class="wpstg-button-unselect button"> None </a>
32
+ <a href="#" class="wpstg-button-select button"> <?php _e(WPStaging\WPStaging::getTablePrefix(), 'wp-staging'); ?> </a>
33
  </div>
34
  <?php
35
  //print_r( $options->excludedTables);
49
  <?php endforeach ?>
50
  <div style="margin-top:10px;">
51
  <a href="#" class="wpstg-button-unselect button"> None </a>
52
+ <a href="#" class="wpstg-button-select button"> <?php _e(WPStaging\WPStaging::getTablePrefix(), 'wp-staging'); ?> </a>
53
  </div>
54
  </div>
55
 
101
  <div class="wpstg-tab-section" id="wpstg-advanced-settings">
102
  <p>
103
  <?php
104
+ _e('<strong>Important:</strong> Are you using a custom login url?', 'wp-staging');
105
  echo '<br/>';
106
+ echo sprintf(__('Set up first <a href="%1$s"><strong>Login Custom Link</strong></a> if login to the admin dashboard is not reachable from the default url below:<pre>%2$s</pre>', 'wp-staging'),
107
  admin_url() . '/admin.php?page=wpstg-settings#wpstg_settings[loginSlug]',
108
  admin_url()
109
  );
110
+ _e('<strong>If you do not do that step, the staging site could be unavailable!</strong>', 'wp-staging');
111
  //$form = $this->di->get("forms")->get("general");
112
  //echo $form->label("wpstg_settings['loginPostId']");
113
  //echo $form->render("wpstg_settings['loginPostId']");
139
  }
140
  ?>
141
 
142
+ <a href="#" id="wpstg-check-space"><?php _e('Check Disk Space', 'wp-staging'); ?></a>
apps/Backend/views/clone/ajax/start.php CHANGED
@@ -18,7 +18,7 @@
18
  </button>
19
 
20
  <button type="button" id="wpstg-show-log-button" class="button" data-clone="<?php echo $cloning->getOptions()->clone?>" style="margin-top: 5px;display:none;">
21
- <?php _e('Display working log', 'wpstg')?>
22
  </button>
23
 
24
  <div>
@@ -32,10 +32,10 @@
32
  $subDirectory = str_replace( get_home_path(), '', ABSPATH );
33
  $helper = new \WPStaging\Utils\Helper();
34
  $url = $helper->get_home_url() . str_replace('/', '', $subDirectory);
35
- echo sprintf( __( 'WP Staging successfully created a staging site in a sub-directory of your main site accessable from:<br><strong><a href="%1$s" target="_blank" id="wpstg-clone-url-1">%1$s</a></strong>', 'wpstg' ), $url );
36
  ?>
37
  <br>
38
- <?php //echo __('Open and access the staging site: ', 'wpstg')?>
39
  <br>
40
  <a href="<?php echo $url; ?>" id="wpstg-clone-url" target="_blank" class="wpstg-link-btn button-primary">
41
  Open staging site <span style="font-size: 10px;">(login with your admin credentials)</span>
18
  </button>
19
 
20
  <button type="button" id="wpstg-show-log-button" class="button" data-clone="<?php echo $cloning->getOptions()->clone?>" style="margin-top: 5px;display:none;">
21
+ <?php _e('Display working log', 'wp-staging')?>
22
  </button>
23
 
24
  <div>
32
  $subDirectory = str_replace( get_home_path(), '', ABSPATH );
33
  $helper = new \WPStaging\Utils\Helper();
34
  $url = $helper->get_home_url() . str_replace('/', '', $subDirectory);
35
+ echo sprintf( __( 'WP Staging successfully created a staging site in a sub-directory of your main site accessable from:<br><strong><a href="%1$s" target="_blank" id="wpstg-clone-url-1">%1$s</a></strong>', 'wp-staging' ), $url );
36
  ?>
37
  <br>
38
+ <?php //echo __('Open and access the staging site: ', 'wp-staging')?>
39
  <br>
40
  <a href="<?php echo $url; ?>" id="wpstg-clone-url" target="_blank" class="wpstg-link-btn button-primary">
41
  Open staging site <span style="font-size: 10px;">(login with your admin credentials)</span>
apps/Backend/views/clone/ajax/update.php CHANGED
@@ -18,7 +18,7 @@
18
  </button>
19
 
20
  <button type="button" id="wpstg-show-log-button" class="button" data-clone="<?php echo $cloning->getOptions()->clone?>" style="margin-top: 5px;display:none;">
21
- <?php _e('Display working log', 'wpstg')?>
22
  </button>
23
 
24
  <div>
18
  </button>
19
 
20
  <button type="button" id="wpstg-show-log-button" class="button" data-clone="<?php echo $cloning->getOptions()->clone?>" style="margin-top: 5px;display:none;">
21
+ <?php _e('Display working log', 'wp-staging')?>
22
  </button>
23
 
24
  <div>
apps/Backend/views/settings/main-settings.php CHANGED
@@ -12,21 +12,21 @@
12
  <div class='wpstg-share-button wpstg-share-button-twitter' data-share-url="https://wordpress.org/plugins/wp-staging">
13
  <div clas='box'>
14
  <a href="https://twitter.com/intent/tweet?button_hashtag=wpstaging&text=Check%20out%20this%20plugin%20for%20creating%20a%20one%20click%20WordPress%20testing%20site&via=wpstg" target='_blank'>
15
- <span class='wpstg-share'><?php echo __( 'Tweet #wpstaging', 'wpstg' ); ?></span>
16
  </a>
17
  </div>
18
  </div>
19
  <div class="wpstg-share-button wpstg-share-button-twitter">
20
  <div class="box">
21
  <a href="https://twitter.com/intent/follow?original_referer=http%3A%2F%2Fsrc.wordpress-develop.dev%2Fwp-admin%2Fadmin.php%3Fpage%3Dwpstg-settings&ref_src=twsrc%5Etfw&region=follow_link&screen_name=renehermenau&tw_p=followbutton" target="_blank">
22
- <span class='wpstg-share'><?php echo __( 'Follow @wpstaging', 'wpstg' ); ?></span>
23
  </a>
24
  </div>
25
  </div>
26
  <div class="wpstg-share-button wpstg-share-button-facebook" data-share-url="https://wordpress.org/plugins/wp-staging">
27
  <div class="box">
28
  <a href="https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fwordpress.org%2Fplugins%2Fwp-staging" target="_blank">
29
- <span class='wpstg-share'><?php echo __( 'Share on Facebook', 'wpstg' ); ?></span>
30
  </a>
31
  </div>
32
  </div>
@@ -302,7 +302,7 @@
302
  <div class="col-title">
303
  <?php //echo $form->label( "wpstg_settings[loginSlug]" ) ?>
304
  <span class="description">
305
- <?php //_e( 'Enter the string which links to your login page if you are using a custom login page instead the default WordPress login. <br/><br/><strong>This does not affect already existing staging sites.</strong><br/> You need to create a new staging site if you like to change the login url of a staging site.', 'wpstg' ); ?>
306
  </span>
307
  </div>
308
  </td>
12
  <div class='wpstg-share-button wpstg-share-button-twitter' data-share-url="https://wordpress.org/plugins/wp-staging">
13
  <div clas='box'>
14
  <a href="https://twitter.com/intent/tweet?button_hashtag=wpstaging&text=Check%20out%20this%20plugin%20for%20creating%20a%20one%20click%20WordPress%20testing%20site&via=wpstg" target='_blank'>
15
+ <span class='wpstg-share'><?php echo __( 'Tweet #wpstaging', 'wp-staging' ); ?></span>
16
  </a>
17
  </div>
18
  </div>
19
  <div class="wpstg-share-button wpstg-share-button-twitter">
20
  <div class="box">
21
  <a href="https://twitter.com/intent/follow?original_referer=http%3A%2F%2Fsrc.wordpress-develop.dev%2Fwp-admin%2Fadmin.php%3Fpage%3Dwpstg-settings&ref_src=twsrc%5Etfw&region=follow_link&screen_name=renehermenau&tw_p=followbutton" target="_blank">
22
+ <span class='wpstg-share'><?php echo __( 'Follow @wpstaging', 'wp-staging' ); ?></span>
23
  </a>
24
  </div>
25
  </div>
26
  <div class="wpstg-share-button wpstg-share-button-facebook" data-share-url="https://wordpress.org/plugins/wp-staging">
27
  <div class="box">
28
  <a href="https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fwordpress.org%2Fplugins%2Fwp-staging" target="_blank">
29
+ <span class='wpstg-share'><?php echo __( 'Share on Facebook', 'wp-staging' ); ?></span>
30
  </a>
31
  </div>
32
  </div>
302
  <div class="col-title">
303
  <?php //echo $form->label( "wpstg_settings[loginSlug]" ) ?>
304
  <span class="description">
305
+ <?php //_e( 'Enter the string which links to your login page if you are using a custom login page instead the default WordPress login. <br/><br/><strong>This does not affect already existing staging sites.</strong><br/> You need to create a new staging site if you like to change the login url of a staging site.', 'wp-staging' ); ?>
306
  </span>
307
  </div>
308
  </td>
apps/Backend/views/welcome/welcome.php CHANGED
@@ -1,15 +1,15 @@
1
  <div class="" id="wpstg-welcome">
2
  <div style="border: 2px solid white;padding: 20px;margin-bottom:20px;">
3
  <h2 class="wpstg-h2">
4
- <span class="wpstg-heading-pro"><?php _e( 'WP Staging Pro', 'wpstg' ); ?></span><?php _e( ' - Copy Themes & Plugins from Staging to Live Site', 'wpstg' ); ?>
5
  </h2>
6
- <li><strong>Cloning</strong> - <?php _e( 'Create a clone of your website with a simple click', 'wpstg' ); ?></li>
7
- <li><strong>Push Changes</strong> - <?php _e( 'Copy plugin and theme files from staging to live site', 'wpstg' ); ?></li>
8
- <li><strong>Authentication</strong> - <?php _e( 'Staging Site is available to authenticated users only', 'wpstg' ); ?></li>
9
- <li><strong>High Performance</strong> - <?php _e( 'Cloning process is fast and does not slow down website loading', 'wpstg' ); ?></li>
10
- <li><strong>Secure</strong> - <?php _e( 'WP Staging is coded well for protection of your data', 'wpstg' ); ?></li>
11
  <a href="http://wp-staging.com/?utm_source=wpstg&utm_medium=addon_page&utm_term=click-wpstaging-pro&utm_campaign=wpstaging" target="_blank" class="wpstg-button green">Buy WP Staging Pro</a>
12
  <a href="<?php echo admin_url(); ?>admin.php?page=wpstg_clone" target="_self" style="margin-left:30px;">Skip - Start Cloning</a>
13
- <div class="wpstg-footer"> <?php _e( 'Comes with our 30-day no questions asked money back guarantee', 'wpstg' ); ?></div>
14
  </div>
15
  </div>
1
  <div class="" id="wpstg-welcome">
2
  <div style="border: 2px solid white;padding: 20px;margin-bottom:20px;">
3
  <h2 class="wpstg-h2">
4
+ <span class="wpstg-heading-pro"><?php _e( 'WP Staging Pro', 'wp-staging' ); ?></span><?php _e( ' - Copy Themes & Plugins from Staging to Live Site', 'wp-staging' ); ?>
5
  </h2>
6
+ <li><strong>Cloning</strong> - <?php _e( 'Create a clone of your website with a simple click', 'wp-staging' ); ?></li>
7
+ <li><strong>Push Changes</strong> - <?php _e( 'Copy plugin and theme files from staging to live site', 'wp-staging' ); ?></li>
8
+ <li><strong>Authentication</strong> - <?php _e( 'Staging Site is available to authenticated users only', 'wp-staging' ); ?></li>
9
+ <li><strong>High Performance</strong> - <?php _e( 'Cloning process is fast and does not slow down website loading', 'wp-staging' ); ?></li>
10
+ <li><strong>Secure</strong> - <?php _e( 'WP Staging is coded well for protection of your data', 'wp-staging' ); ?></li>
11
  <a href="http://wp-staging.com/?utm_source=wpstg&utm_medium=addon_page&utm_term=click-wpstaging-pro&utm_campaign=wpstaging" target="_blank" class="wpstg-button green">Buy WP Staging Pro</a>
12
  <a href="<?php echo admin_url(); ?>admin.php?page=wpstg_clone" target="_self" style="margin-left:30px;">Skip - Start Cloning</a>
13
+ <div class="wpstg-footer"> <?php _e( 'Comes with our 30-day no questions asked money back guarantee', 'wp-staging' ); ?></div>
14
  </div>
15
  </div>
apps/Core/WPStaging.php CHANGED
@@ -29,7 +29,7 @@ final class WPStaging {
29
  /**
30
  * Plugin version
31
  */
32
- const VERSION = "2.3.5";
33
 
34
  /**
35
  * Plugin name
@@ -77,7 +77,9 @@ final class WPStaging {
77
  */
78
  private function __construct() {
79
 
80
- $file = WP_PLUGIN_DIR . DIRECTORY_SEPARATOR . self::SLUG . DIRECTORY_SEPARATOR . self::SLUG . ".php";
 
 
81
 
82
  $this->registerMain();
83
  $this->registerNamespaces();
@@ -101,10 +103,10 @@ final class WPStaging {
101
  /**
102
  * Method to be executed upon activation of the plugin
103
  */
104
- public function onActivation() {
105
- $Activation = new \WPStaging\Backend\Activation\Activation();
106
- $Activation->install_dependancies();
107
- }
108
 
109
  public function registerMain() {
110
  // Slug of the plugin
@@ -148,7 +150,7 @@ final class WPStaging {
148
 
149
  // Load this css file on frontend and backend on all pages if current site is a staging site
150
  if( $this->isStagingSite() ) {
151
- wp_enqueue_style( "wpstg-admin-bar", $this->backend_url . "css/wpstg-admin-bar.css", $this->getVersion() );
152
  }
153
 
154
  $availablePages = array(
@@ -159,17 +161,16 @@ final class WPStaging {
159
  "wp-staging_page_wpstg-welcome",
160
  );
161
 
 
 
 
 
162
 
163
  // Disable heartbeat check for cloning and pushing
164
  wp_deregister_script( 'heartbeat' );
165
 
166
  // Disable user login status check
167
- remove_action( 'admin_enqueue_scripts', 'wp_auth_check_load' );
168
-
169
- // Load these css and js files only on wp staging admin pages
170
- if( !in_array( $hook, $availablePages ) || !is_admin() ) {
171
- return;
172
- }
173
 
174
  // Load admin js files
175
  wp_enqueue_script(
@@ -178,7 +179,7 @@ final class WPStaging {
178
 
179
  // Load admin css files
180
  wp_enqueue_style(
181
- "wpstg-admin", $this->backend_url . "css/wpstg-admin.css", $this->getVersion()
182
  );
183
 
184
  wp_localize_script( "wpstg-admin-script", "wpstg", array(
@@ -408,7 +409,7 @@ final class WPStaging {
408
  }
409
  // Local file (/wp-content/plugins/wp-staging/languages/)
410
  elseif( file_exists( $moFileLocal ) ) {
411
- load_textdomain( "wp-staging", $moFileGlobal );
412
  }
413
  // Default file
414
  else {
29
  /**
30
  * Plugin version
31
  */
32
+ const VERSION = "2.3.6";
33
 
34
  /**
35
  * Plugin name
77
  */
78
  private function __construct() {
79
 
80
+ //$file = WP_PLUGIN_DIR . DIRECTORY_SEPARATOR . self::SLUG . DIRECTORY_SEPARATOR . self::SLUG . ".php";
81
+ // Activation Hook
82
+ //register_activation_hook( __FILE__, array($this, "onActivation") );
83
 
84
  $this->registerMain();
85
  $this->registerNamespaces();
103
  /**
104
  * Method to be executed upon activation of the plugin
105
  */
106
+ // public function onActivation() {
107
+ // $Activation = new \WPStaging\Backend\Activation\Activation();
108
+ // $Activation->install_dependancies();
109
+ // }
110
 
111
  public function registerMain() {
112
  // Slug of the plugin
150
 
151
  // Load this css file on frontend and backend on all pages if current site is a staging site
152
  if( $this->isStagingSite() ) {
153
+ wp_enqueue_style( "wpstg-admin-bar", $this->backend_url . "css/wpstg-admin-bar.css", array(), $this->getVersion() );
154
  }
155
 
156
  $availablePages = array(
161
  "wp-staging_page_wpstg-welcome",
162
  );
163
 
164
+ // Load these css and js files only on wp staging admin pages
165
+ if( !in_array( $hook, $availablePages ) || !is_admin() ) {
166
+ return;
167
+ }
168
 
169
  // Disable heartbeat check for cloning and pushing
170
  wp_deregister_script( 'heartbeat' );
171
 
172
  // Disable user login status check
173
+ //remove_action( 'admin_enqueue_scripts', 'wp_auth_check_load' );
 
 
 
 
 
174
 
175
  // Load admin js files
176
  wp_enqueue_script(
179
 
180
  // Load admin css files
181
  wp_enqueue_style(
182
+ "wpstg-admin", $this->backend_url . "css/wpstg-admin.css", array(), $this->getVersion()
183
  );
184
 
185
  wp_localize_script( "wpstg-admin-script", "wpstg", array(
409
  }
410
  // Local file (/wp-content/plugins/wp-staging/languages/)
411
  elseif( file_exists( $moFileLocal ) ) {
412
+ load_textdomain( "wp-staging", $moFileLocal );
413
  }
414
  // Default file
415
  else {
apps/Frontend/Frontend.php CHANGED
@@ -68,14 +68,14 @@ class Frontend extends InjectionAware {
68
  // $this->resetPermaLinks();
69
  //
70
  // if( $this->disableLogin() ) {
71
- // wp_die( sprintf( __( 'Access denied. <a href="%1$s">Login</a> first to access this site', 'wpstg' ), $this->getLoginUrl() ) );
72
  // }
73
  // }
74
  public function checkPermissions() {
75
  $this->resetPermaLinks();
76
 
77
  if($this->disableLogin() ) {
78
- //wp_die( sprintf( __( 'Access denied. <a href="%1$s">Login</a> first to access this site', 'wpstg' ), $this->getLoginUrl() ) );
79
  //}
80
  $args = array(
81
  'echo' => true,
68
  // $this->resetPermaLinks();
69
  //
70
  // if( $this->disableLogin() ) {
71
+ // wp_die( sprintf( __( 'Access denied. <a href="%1$s">Login</a> first to access this site', 'wp-staging' ), $this->getLoginUrl() ) );
72
  // }
73
  // }
74
  public function checkPermissions() {
75
  $this->resetPermaLinks();
76
 
77
  if($this->disableLogin() ) {
78
+ //wp_die( sprintf( __( 'Access denied. <a href="%1$s">Login</a> first to access this site', 'wp-staging' ), $this->getLoginUrl() ) );
79
  //}
80
  $args = array(
81
  'echo' => true,
apps/Frontend/loginForm.php CHANGED
@@ -192,14 +192,14 @@ class loginForm {
192
  // private function getLoginForm() {
193
  // $this->getHeader();
194
  // echo '<body id="error-page">';
195
- // echo __( 'Access denied. Login to access this site', 'wpstg' );
196
  //
197
  // $args = array(
198
  // 'redirect' => admin_url(),
199
  // 'redirect' => admin_url(),
200
  // 'form_id' => 'wpstg-loginform',
201
- // 'label_username' => __( 'Username', 'wpstg' ),
202
- // 'label_password' => __( 'Password', 'wpstg' ),
203
  // 'label_remember' => __( 'Remember Me' ),
204
  // 'label_log_in' => __( 'Log In Staging Site' ),
205
  // 'remember' => true
192
  // private function getLoginForm() {
193
  // $this->getHeader();
194
  // echo '<body id="error-page">';
195
+ // echo __( 'Access denied. Login to access this site', 'wp-staging' );
196
  //
197
  // $args = array(
198
  // 'redirect' => admin_url(),
199
  // 'redirect' => admin_url(),
200
  // 'form_id' => 'wpstg-loginform',
201
+ // 'label_username' => __( 'Username', 'wp-staging' ),
202
+ // 'label_password' => __( 'Password', 'wp-staging' ),
203
  // 'label_remember' => __( 'Remember Me' ),
204
  // 'label_log_in' => __( 'Log In Staging Site' ),
205
  // 'remember' => true
languages/wp-staging-de_DE.mo ADDED
Binary file
languages/wp-staging-de_DE.po ADDED
@@ -0,0 +1,504 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Translation of Plugins - WP Staging &#8211; DB &amp; File Duplicator &amp; Migration - Stable (latest release) in German
2
+ # This file is distributed under the same license as the Plugins - WP Staging &#8211; DB &amp; File Duplicator &amp; Migration - Stable (latest release) package.
3
+ msgid ""
4
+ msgstr ""
5
+ "PO-Revision-Date: 2018-08-24 20:55:04+0000\n"
6
+ "MIME-Version: 1.0\n"
7
+ "Content-Type: text/plain; charset=UTF-8\n"
8
+ "Content-Transfer-Encoding: 8bit\n"
9
+ "Plural-Forms: nplurals=2; plural=n != 1;\n"
10
+ "X-Generator: GlotPress/2.4.0-alpha\n"
11
+ "Language: de\n"
12
+ "Project-Id-Version: Plugins - WP Staging &#8211; DB &amp; File Duplicator &amp; Migration - Stable (latest release)\n"
13
+
14
+ #. Author URI of the plugin/theme
15
+ msgid "https://wp-staging.com"
16
+ msgstr "https://wp-staging.com"
17
+
18
+ #. Author of the plugin/theme
19
+ msgid "WP-Staging"
20
+ msgstr "WP-Staging"
21
+
22
+ #. Description of the plugin/theme
23
+ msgid "Create a staging clone site for testing & developing"
24
+ msgstr "Erstelle eine Klon Webseite zum Testen und Entwickeln"
25
+
26
+ #. Plugin URI of the plugin/theme
27
+ msgid "https://wordpress.org/plugins/wp-staging"
28
+ msgstr "https://wordpress.org/plugins/wp-staging"
29
+
30
+ #: apps/Frontend/Frontend.php:88 apps/Frontend/loginForm.php:256
31
+ msgid "Log In"
32
+ msgstr "Anmelden"
33
+
34
+ #: apps/Frontend/Frontend.php:87 apps/Frontend/loginForm.php:255
35
+ msgid "Remember Me"
36
+ msgstr "Erinnere mich"
37
+
38
+ #: apps/Frontend/Frontend.php:86 apps/Frontend/loginForm.php:254
39
+ msgid "Password"
40
+ msgstr "Erinnere mich"
41
+
42
+ #: apps/Frontend/Frontend.php:85 apps/Frontend/loginForm.php:253
43
+ msgid "Username or Email Address"
44
+ msgstr "Benutzername oder E-Mail Adresse"
45
+
46
+ #: apps/Core/Utils/Report.php:31
47
+ msgid "Please accept our privacy policy."
48
+ msgstr "Bitte akzeptiere unsere Datenschutzvereinbarung"
49
+
50
+ #: apps/Core/Utils/Report.php:29
51
+ msgid "Please enter your issue."
52
+ msgstr "Bitte beschreibe Dein Problem"
53
+
54
+ #: apps/Core/Utils/Report.php:27
55
+ msgid "Email address is not valid."
56
+ msgstr "E-Mail Addresse ist nicht gültig"
57
+
58
+ #: apps/Core/Cron/Cron.php:35
59
+ msgid "Once a month"
60
+ msgstr "Einmal im Monat"
61
+
62
+ #: apps/Core/Cron/Cron.php:30
63
+ msgid "Once Weekly"
64
+ msgstr "Einmal wöchentlich"
65
+
66
+ #: apps/Backend/views/welcome/welcome.php:13
67
+ msgid "Comes with our 30-day no questions asked money back guarantee"
68
+ msgstr "Kommt mit unserer 30-Tage Geld zurück Garantie"
69
+
70
+ #: apps/Backend/views/welcome/welcome.php:10
71
+ msgid "WP Staging is coded well for protection of your data"
72
+ msgstr "WP Staging wurde sorgfältig entwickelt um Deine Daten zu schützen"
73
+
74
+ #: apps/Backend/views/welcome/welcome.php:9
75
+ msgid "Cloning process is fast and does not slow down website loading"
76
+ msgstr "Der Klonvorgang ist schnell und beeinflusst nicht die Webseite Ladezeit"
77
+
78
+ #: apps/Backend/views/welcome/welcome.php:8
79
+ msgid "Staging Site is available to authenticated users only"
80
+ msgstr "Staging Webseite ist nur für berechtigte Benutzer verfügbar"
81
+
82
+ #: apps/Backend/views/welcome/welcome.php:7
83
+ msgid "Copy plugin and theme files from staging to live site"
84
+ msgstr "Kopiere Plugin und Theme Dateien von der Staging auf die Live Seite"
85
+
86
+ #: apps/Backend/views/welcome/welcome.php:6
87
+ msgid "Create a clone of your website with a simple click"
88
+ msgstr "Erstelle einen Klon Deiner Webseite mit einem einfachen Klick"
89
+
90
+ #: apps/Backend/views/welcome/welcome.php:4
91
+ msgid " - Copy Themes & Plugins from Staging to Live Site"
92
+ msgstr "Kopiere Themes & Plugins von der Staging auf die Live Seite"
93
+
94
+ #: apps/Backend/views/welcome/welcome.php:4
95
+ msgid "WP Staging Pro"
96
+ msgstr "WP Staging Pro"
97
+
98
+ #: apps/Backend/views/tools/tabs/import_export.php:52
99
+ msgid "Import"
100
+ msgstr "Importieren"
101
+
102
+ #: apps/Backend/views/tools/tabs/import_export.php:33
103
+ msgid "Import Settings"
104
+ msgstr "Importiere Einstellungen"
105
+
106
+ #: apps/Backend/views/tools/tabs/import_export.php:22
107
+ msgid "Export"
108
+ msgstr "Exportieren"
109
+
110
+ #: apps/Backend/views/tools/tabs/import_export.php:5
111
+ msgid "Export Settings"
112
+ msgstr "Exportiere Einstellungen"
113
+
114
+ #: apps/Backend/views/settings/main-settings.php:290
115
+ msgid ""
116
+ "Check this box if you like WP Staging to check sizes of each directory on scanning process.\n"
117
+ " <br>\n"
118
+ " Warning this may cause timeout problems in big directory / file structures."
119
+ msgstr "Lasse WP Staging die Ordnergrösse bei jedem Scan Prozess überprüfen<br>Achtung, dies könnte bei großen Ordner / Datei Strukturen zu Timeout Problemen führen."
120
+
121
+ #: apps/Backend/views/settings/main-settings.php:275
122
+ msgid ""
123
+ "Check this box if you like WP Staging to completely remove all of its data when the plugin is deleted.\n"
124
+ " This will not remove staging sites files or database tables."
125
+ msgstr "Lösche alle Einstellungen beim Löschen des Plugins"
126
+
127
+ #: apps/Backend/views/settings/main-settings.php:261
128
+ msgid "The Optimizer is a mu plugin which disables all other plugins during WP Staging processing. Usually this makes the cloning process more reliable. If you experience issues, disable the Optimizer."
129
+ msgstr "Der Optimizer ist ein mu Plugin welches alle anderen Plugins während des Klonvorgangs deaktiviert. Gewöhnlich macht das den Klonvorgang sehr viel zuverlässiger. Deaktiviere diese Option wenn etwas nicht funktioniert."
130
+
131
+ #: apps/Backend/views/settings/main-settings.php:246
132
+ msgid ""
133
+ "This will enable an extended debug mode which creates additional entries\n"
134
+ " in <strong>wp-content/uploads/wp-staging/logs/logfile.log</strong>.\n"
135
+ " Please enable this when we ask you to do so."
136
+ msgstr "Dieser Modus schreibt zusätzliche Einträge in die Logdatei <strong>wp-content/uploads/wp-staging/logs/logfile.log</strong> Bitte aktiviere diesen Modus wenn Du ein Support Ticket eröffnest und wir Dich darum bitten."
137
+
138
+ #: apps/Backend/views/settings/main-settings.php:196
139
+ msgid ""
140
+ "Using high will result in fast as possible processing but the cpu load\n"
141
+ " increases and it's also possible that staging process gets interrupted because of too many ajax requests\n"
142
+ " (e.g. <strong>authorization error</strong>).\n"
143
+ " Using a lower value results in lower cpu load on your server but also slower staging site creation."
144
+ msgstr "Die Verwendung von \"High\" erstellt die Staging Seite am schnellsten aber die CPU Load erhöht sich und es ist möglich, dass der Staging Prozess aufgrund zu vieler Ajax Anfragen durch einen Timeout unterbrochen wird.Die Verwendungung einer niedrigeren Einstellung führt zu einer geringeren CPU Load, aber auch zu einer langsameren Verarbeitung."
145
+
146
+ #: apps/Backend/views/settings/main-settings.php:175
147
+ msgid ""
148
+ "Buffer size for the file copy process in megabyte.\n"
149
+ " The higher the value the faster large files are copied.\n"
150
+ " To find out the highest possible values try a high one and lower it until\n"
151
+ " you get no errors during file copy process. Usually this value correlates directly\n"
152
+ " with the memory consumption of php so make sure that\n"
153
+ " it does not exceed any php.ini max_memory limits."
154
+ msgstr "Buffer Grösse für den Datei Kopiervorgang in Megabyte. Je größer der Wert, desto schneller werden große Dateien kopiert. Größere Werte beeinflussen auch die maximale Speicherauslastung von PHP und sollte daher nicht zu gross gewählt werden."
155
+
156
+ #: apps/Backend/views/settings/main-settings.php:159
157
+ msgid ""
158
+ "Maximum size of the files which are allowed to copy. All files larger than this value will be skipped. \n"
159
+ " Note: Increase this option only if you have a good reason. Files larger than a few megabytes are in 99% of all cases logging and backup files which are not needed on a staging site."
160
+ msgstr "Maximale Dateigrösse welche noch kopiert wird. Alle Dateien größer als dieser Wert werden übersprungen. Hinweis: Erhöhe diese Option nur wenn Du einen guten Grund dazu hast. Dateien größer als ein einige Megabyte sind in 99% aller Fälle Log und Backup Dateien welche für eine Staging Seite nicht notwendig sind."
161
+
162
+ #: apps/Backend/views/settings/main-settings.php:142
163
+ msgid "<strong>Important:</strong> If CPU Load Priority is <strong>Low</strong> set a file copy limit value of 10 or higher! Otherwise file copying process takes a lot of time."
164
+ msgstr "<strong>Achtung</strong> Wenn die CPU Load Priority <strong>Low</strong> ist, setze das Datei Kopierlimit auf 10 oder höher! Andernfalls wird der Kopiervorgang sehr langsam sein."
165
+
166
+ #: apps/Backend/views/settings/main-settings.php:136
167
+ msgid ""
168
+ "Number of files to copy that will be copied within one ajax request.\n"
169
+ " The higher the value the faster the file copy process.\n"
170
+ " To find out the highest possible values try a high value like 500 or more. If you get timeout issues, lower it\n"
171
+ " until you get no more errors during copying process."
172
+ msgstr "Anzahl der Dateien, die mit einer Ajax Abfrage kopiert werden. Je höher der Wert, desto schneller ist der Kopiervorgang. "
173
+
174
+ #: apps/Backend/views/settings/main-settings.php:116
175
+ msgid ""
176
+ "Number of DB rows, that are processed within one ajax query.\n"
177
+ " The higher the value the faster the database search & replace process.\n"
178
+ " This is a high memory consumptive process. If you get timeouts lower this value!"
179
+ msgstr "Anzahl der Datenbank Einträge welche zugleich verarbeitet werden. Je grösser der Wert desto schneller ist der Suchen & Ersetzen Prozess."
180
+
181
+ #: apps/Backend/views/settings/main-settings.php:96
182
+ msgid ""
183
+ "Number of DB rows, that are copied within one ajax query.\n"
184
+ " The higher the value the faster the database copy process.\n"
185
+ " To find out the highest possible values try a high value like 1.000 or more. If you get timeout issues, lower it\n"
186
+ " until you get no more errors during copying process."
187
+ msgstr "Anzahl der Datenbank Einträge, die zugleich kopiert werden. Je höher der Wert, desto schneller wird die Datenbank kopiert. "
188
+
189
+ #: apps/Backend/views/clone/single-site/index.php:16
190
+ msgid "Report Issue"
191
+ msgstr "Fehlermeldung"
192
+
193
+ #: apps/Backend/views/clone/single-site/index.php:12
194
+ msgid "Cloning"
195
+ msgstr "Klonen"
196
+
197
+ #: apps/Backend/views/clone/single-site/index.php:8
198
+ msgid "Scanning"
199
+ msgstr "Scannen"
200
+
201
+ #: apps/Backend/views/clone/single-site/index.php:4
202
+ msgid "Overview"
203
+ msgstr "Überblick"
204
+
205
+ #: apps/Backend/views/clone/multi-site/index.php:2
206
+ msgid "WordPress Multisite is currently not supported!"
207
+ msgstr "WordPress Multisite wird nur WP Staging Pro unterstützt. "
208
+
209
+ #: apps/Backend/views/clone/ajax/update.php:17
210
+ msgid "Cancel Update"
211
+ msgstr "Abbruch Klonvorgang"
212
+
213
+ #: apps/Backend/views/clone/ajax/start.php:51
214
+ msgid "Important Notes:"
215
+ msgstr "Wichtige Hinweise"
216
+
217
+ #: apps/Backend/views/clone/ajax/start.php:47
218
+ msgid "Start again"
219
+ msgstr "Starte Neu"
220
+
221
+ #: apps/Backend/views/clone/ajax/start.php:35
222
+ msgid "WP Staging successfully created a staging site in a sub-directory of your main site accessable from:<br><strong><a href=\"%1$s\" target=\"_blank\" id=\"wpstg-clone-url-1\">%1$s</a></strong>"
223
+ msgstr ""
224
+ "WP Staging hat erfolgreich eine Staging Seite erstellt. Erreichbar über \n"
225
+ "<br><strong><a href=\"%1$s\" target=\"_blank\" id=\"wpstg-clone-url-1\">%1$s</a></strong>"
226
+
227
+ #: apps/Backend/views/clone/ajax/start.php:21
228
+ #: apps/Backend/views/clone/ajax/update.php:21
229
+ msgid "Display working log"
230
+ msgstr "Öffne Log Fenster"
231
+
232
+ #: apps/Backend/views/clone/ajax/start.php:2
233
+ #: apps/Backend/views/clone/ajax/update.php:2
234
+ msgid "Processing, please wait..."
235
+ msgstr "Verarbeite, bitte warten..."
236
+
237
+ #: apps/Backend/views/clone/ajax/single-overview.php:36
238
+ msgid "Delete"
239
+ msgstr "Löschen"
240
+
241
+ #: apps/Backend/views/clone/ajax/single-overview.php:32
242
+ msgid "Update"
243
+ msgstr "Aktualisieren"
244
+
245
+ #: apps/Backend/views/clone/ajax/single-overview.php:28
246
+ msgid "Open"
247
+ msgstr "Öffnen"
248
+
249
+ #: apps/Backend/views/clone/ajax/single-overview.php:11
250
+ msgid "Your Staging Sites:"
251
+ msgstr "Deine Staging Seiten"
252
+
253
+ #: apps/Backend/views/clone/ajax/single-overview.php:3
254
+ msgid "Create new staging site"
255
+ msgstr "Erstelle neue Staging Seite"
256
+
257
+ #: apps/Backend/views/clone/ajax/scan.php:142
258
+ msgid "Check Disk Space"
259
+ msgstr "Überprüfe Speicherplatz"
260
+
261
+ #: apps/Backend/views/clone/ajax/scan.php:134
262
+ msgid "Start Cloning"
263
+ msgstr "Starte Klonen"
264
+
265
+ #: apps/Backend/views/clone/ajax/scan.php:127
266
+ msgid "Update Clone"
267
+ msgstr "Aktualisiere Klon"
268
+
269
+ #: apps/Backend/views/clone/ajax/scan.php:121
270
+ msgid "Back"
271
+ msgstr "Zurück"
272
+
273
+ #: apps/Backend/views/clone/ajax/scan.php:110
274
+ msgid "<strong>If you do not do that step, the staging site could be unavailable!</strong>"
275
+ msgstr "<strong>Wenn Du diesen Schritt nicht durchführst könnte die Staging Seite nicht verfügbar sein</strong>"
276
+
277
+ #: apps/Backend/views/clone/ajax/scan.php:106
278
+ msgid "Set up first <a href=\"%1$s\"><strong>Login Custom Link</strong></a> if login to the admin dashboard is not reachable from the default url below:<pre>%2$s</pre>"
279
+ msgstr "Erstelle zunächst einen <a href=\"%1$s\"><strong>Login Custom Link</strong></a> wenn der Login auf das admin Dashboard nicht von der Default URL verfügbar ist:<pre>%2$s</pre>"
280
+
281
+ #: apps/Backend/views/clone/ajax/scan.php:104
282
+ msgid "<strong>Important:</strong> Are you using a custom login url?"
283
+ msgstr "<strong>Wichtig:</strong>Verwendest Du eine benutzerdefinierte Login URL?"
284
+
285
+ #: apps/Backend/views/clone/ajax/scan.php:89
286
+ msgid "All files will be copied to: "
287
+ msgstr "Alle Dateien werden kopiert nach:"
288
+
289
+ #: apps/Backend/views/clone/ajax/scan.php:69
290
+ msgid "Extra directories to copy"
291
+ msgstr "Extra Ordner zum Kopieren"
292
+
293
+ #: apps/Backend/views/clone/ajax/scan.php:63
294
+ msgid "Select folders to copy. Click on folder name to list subfolders!"
295
+ msgstr "Wähle Ordner zum Kopieren aus. Klicke auf Ordnernamen um Unterordner aufzulisten."
296
+
297
+ #: apps/Backend/views/clone/ajax/scan.php:58
298
+ msgid "Files"
299
+ msgstr "Dateien"
300
+
301
+ #: apps/Backend/views/clone/ajax/scan.php:17
302
+ msgid "DB Tables"
303
+ msgstr "Datenbank Tabellen"
304
+
305
+ #: apps/Backend/views/clone/ajax/scan.php:2
306
+ msgid "Staging Site Name:"
307
+ msgstr "Staging Seite Bezeichnung:"
308
+
309
+ #: apps/Backend/views/clone/ajax/delete-confirmation.php:85
310
+ msgid "Remove"
311
+ msgstr "Entferne"
312
+
313
+ #: apps/Backend/views/clone/ajax/delete-confirmation.php:81
314
+ #: apps/Backend/views/clone/ajax/start.php:17
315
+ msgid "Cancel"
316
+ msgstr "Abbruch"
317
+
318
+ #: apps/Backend/views/clone/ajax/delete-confirmation.php:66
319
+ msgid "The folder below and all of its subfolders will be deleted. Unselect the checkbox for not deleting the files."
320
+ msgstr "Der ausgewählte Ordner und alle Unterordner werden gelöscht. Abwählen um die Dateien nicht zu löschen."
321
+
322
+ #: apps/Backend/views/clone/ajax/delete-confirmation.php:60
323
+ msgid "Files to remove"
324
+ msgstr "Dateien die entfernt werden"
325
+
326
+ #: apps/Backend/views/clone/ajax/delete-confirmation.php:36
327
+ msgid "Unselect database tables you do not want to delete:"
328
+ msgstr "Wähle die Datenbank Tabellen ab, welche nicht gelöscht werden sollen"
329
+
330
+ #: apps/Backend/views/clone/ajax/delete-confirmation.php:30
331
+ msgid "DB tables to remove"
332
+ msgstr "Datenbank Tabellen die entfernt werden"
333
+
334
+ #: apps/Backend/views/clone/ajax/delete-confirmation.php:9
335
+ msgid "Clone name:"
336
+ msgstr "Klon Bezeichnung"
337
+
338
+ #: apps/Backend/views/clone/ajax/delete-confirmation.php:4
339
+ msgid "Attention: Check carefully if these database tables and files are safe to delete and do not belong to your live site!"
340
+ msgstr "Achtung: Überprüfe sorgfältig ob diese Datenbank Tabellen und Dateien sicher gelöscht werden dürfen und nicht zu Deiner Live Seite gehören!"
341
+
342
+ #: apps/Backend/views/_includes/report-issue.php:26
343
+ msgid "Send Issue"
344
+ msgstr "Abschicken"
345
+
346
+ #: apps/Backend/views/_includes/report-issue.php:20
347
+ msgid "By submitting, I accept the <a href=\"https://wp-staging.com/privacy-policy/\" target=\"_blank\">Privacy Policy</a> and consent that my email will be stored and processed for the purposes of proving support."
348
+ msgstr "Mit Übertragen akzeptiere ich die <a href=\"https://wp-staging.com/privacy-policy/\" target=\"_blank\">Datenschutz Vereinbarung</a> und erlaube, dass meine E-Mail Adresse gespeichert und verarbeitet wird um meine Support Anfrage zu beantworten."
349
+
350
+ #: apps/Backend/views/_includes/report-issue.php:12
351
+ msgid "Optional: Submit the <a href=\"%s\" target=\"_blank\">System Log</a>. This helps us to resolve your technical issues."
352
+ msgstr "Optional: Übertrage das <a href=\"%s\" target=\"_blank\">System Log</a>. Das hilft und Dein technisches Anliegen zu lösen."
353
+
354
+ #: apps/Backend/views/_includes/messages/staging-directory-permission-problem.php:4
355
+ msgid ""
356
+ "WP Staging Folder Permission error:</strong>\n"
357
+ " %1$s is not write and/or readable.\n"
358
+ " <br>\n"
359
+ " Check if the folder <strong>%1$s</strong> is writeable by php user www-data.\n"
360
+ " File permissions should be chmod 755 or 777."
361
+ msgstr ""
362
+ "WP Staging Dateirechte Fehler:</strong>\n"
363
+ " %1$s ist nicht schreib und/oder lesbar.\n"
364
+ " <br>\n"
365
+ " Überprüfe ob der Ordner <strong>%1$s</strong> beschreibbar ist vom PHP Benutzer www-data.\n"
366
+ " File permissions should be chmod 755 or 777."
367
+
368
+ #: apps/Backend/views/_includes/messages/rating.php:27
369
+ msgid "No, not good enough"
370
+ msgstr "Nein, nicht gut genug"
371
+
372
+ #: apps/Backend/views/_includes/messages/rating.php:22
373
+ msgid "I already did"
374
+ msgstr "Habe ich schon getan"
375
+
376
+ #: apps/Backend/views/_includes/messages/rating.php:17
377
+ msgid "Ok, you deserved it"
378
+ msgstr "Ok, hast Du verdient"
379
+
380
+ #: apps/Backend/views/_includes/messages/rating.php:5
381
+ msgid ""
382
+ "P.S. Looking for a way to migrate the staging site database and copy plugins and theme files from staging to live site?<br/>\n"
383
+ " Try out <a href=\"%1$s\" target=\"_blank\" style=\"color:white;font-weight:bold;\">WP Staging Pro</a>\n"
384
+ " "
385
+ msgstr ""
386
+ "P.S. Suchst Du einen Weg die Staging Seite auf Deine Live Seite zu übertragen?<br/>\n"
387
+ "Probiere <a href=\"%1$s\" target=\"_blank\" style=\"color:white;font-weight:bold;\">WP Staging Pro</a>\n"
388
+ " aus"
389
+
390
+ #: apps/Backend/views/_includes/messages/rating.php:2
391
+ msgid ""
392
+ " Awesome, you've been using <strong>WP Staging </strong> for more than 1 week.\n"
393
+ " May I ask you to give it a <strong>5-star</strong> rating on Wordpress?"
394
+ msgstr "Toll, Du verwendest <strong>WP Staging</strong> seit mehr als eine Woche. Darf ich Dich bitten eine 5-Sterne Bewertung auf WordPress.org abzugeben?"
395
+
396
+ #: apps/Backend/views/_includes/header.php:28
397
+ #: apps/Backend/views/settings/main-settings.php:29
398
+ msgid "Share on Facebook"
399
+ msgstr "Teile auf Facebook"
400
+
401
+ #: apps/Backend/views/_includes/header.php:21
402
+ #: apps/Backend/views/settings/main-settings.php:22
403
+ msgid "Follow @wpstaging"
404
+ msgstr "Folge @wpstaging"
405
+
406
+ #: apps/Backend/views/_includes/header.php:14
407
+ #: apps/Backend/views/settings/main-settings.php:15
408
+ msgid "Tweet #wpstaging"
409
+ msgstr "Tweet #wpstaging"
410
+
411
+ #: apps/Backend/Pluginmeta/Pluginmeta.php:63
412
+ msgid "Start Now"
413
+ msgstr "Jetzt Starten"
414
+
415
+ #: apps/Backend/Notices/Notices.php:145
416
+ #: apps/Backend/views/_includes/messages/transient.php:7
417
+ msgid "WP Staging and WP Staging Pro cannot both be active. We've automatically deactivated WP Staging Pro."
418
+ msgstr "WP Staging und WP Staging Pro können nicht beide gleichzeitig aktiv sein. Wir haben WP Staging Pro daher deaktiviert."
419
+
420
+ #: apps/Backend/Notices/Notices.php:143
421
+ #: apps/Backend/views/_includes/messages/transient.php:6
422
+ msgid "WP Staging and WP Staging Pro cannot both be active. We've automatically deactivated WP Staging."
423
+ msgstr "WP Staging und WP Staging Pro können nicht beide gleichzeitig aktiv sein. Wir haben WP Staging daher deaktiviert."
424
+
425
+ #: apps/Backend/Modules/Jobs/Directories.php:421
426
+ #: apps/Backend/Modules/Jobs/Multisite/Directories.php:485
427
+ msgid "Out of disk space."
428
+ msgstr "Kein freier Speicherplatz verfügbar"
429
+
430
+ #: apps/Backend/Modules/Jobs/Directories.php:417
431
+ #: apps/Backend/Modules/Jobs/Multisite/Directories.php:481
432
+ msgid "Unable to write to: %s"
433
+ msgstr "Nicht möglich in %s zu schreiben"
434
+
435
+ #: apps/Backend/Modules/Jobs/Directories.php:396
436
+ #: apps/Backend/Modules/Jobs/Multisite/Directories.php:460
437
+ msgid "Unable to open %s with mode %s"
438
+ msgstr "Kann nicht öffnen %s mit Modus %s"
439
+
440
+ #: apps/Backend/Administrator.php:296
441
+ msgid "Please upload a file to import"
442
+ msgstr "Bitte lade eine Datei zum importieren hoch"
443
+
444
+ #: apps/Backend/Administrator.php:246
445
+ msgid "System Info"
446
+ msgstr "System Info"
447
+
448
+ #: apps/Backend/Administrator.php:245
449
+ msgid "Import/Export"
450
+ msgstr "Import/Export"
451
+
452
+ #: apps/Backend/Administrator.php:208
453
+ msgid "General"
454
+ msgstr "Allgemein"
455
+
456
+ #: apps/Backend/Administrator.php:197
457
+ msgid "License"
458
+ msgstr "Lizenz"
459
+
460
+ #: apps/Backend/Administrator.php:197
461
+ msgid "WP Staging License"
462
+ msgstr "WP Staging Lizenz"
463
+
464
+ #: apps/Backend/Administrator.php:191
465
+ msgid "Get WP Staging Pro"
466
+ msgstr "Erhalte WP Staging Pro"
467
+
468
+ #: apps/Backend/Administrator.php:191
469
+ msgid "WP Staging Welcome"
470
+ msgstr "WP Staging Willkommen"
471
+
472
+ #: apps/Backend/Administrator.php:187
473
+ msgid "Tools"
474
+ msgstr "Werkzeuge"
475
+
476
+ #: apps/Backend/Administrator.php:187
477
+ msgid "WP Staging Tools"
478
+ msgstr "WP Staging Werkzeuge"
479
+
480
+ #: apps/Backend/Administrator.php:182 apps/Backend/Pluginmeta/Pluginmeta.php:42
481
+ msgid "Settings"
482
+ msgstr "Einstellungen"
483
+
484
+ #: apps/Backend/Administrator.php:182
485
+ msgid "WP Staging Settings"
486
+ msgstr "WP Staging Einstellungen"
487
+
488
+ #: apps/Backend/Administrator.php:177
489
+ msgid "Sites / Start"
490
+ msgstr "Seiten / Start"
491
+
492
+ #: apps/Backend/Administrator.php:177
493
+ msgid "WP Staging Jobs"
494
+ msgstr "WP Staging Jobs"
495
+
496
+ #. #-#-#-#-# wp-staging-code.pot (WP Staging 2.3.5) #-#-#-#-#
497
+ #. Plugin Name of the plugin/theme
498
+ #: apps/Backend/Administrator.php:172
499
+ msgid "WP Staging"
500
+ msgstr "WP Staging"
501
+
502
+ #: apps/Backend/Administrator.php:142
503
+ msgid "Settings updated."
504
+ msgstr "Einstellungen aktualisiert"
readme.txt CHANGED
@@ -9,7 +9,7 @@ License URI: http://www.gnu.org/licenses/gpl-2.0.html
9
  Tags: staging, duplication, cloning, clone, migration, sandbox, test site, testing, backup, post, admin, administration, duplicate posts
10
  Requires at least: 3.6+
11
  Tested up to: 4.9
12
- Stable tag: 2.3.5
13
  Requires PHP: 5.3
14
 
15
  A duplicator plugin! Clone, duplicate and migrate live sites to independent staging and development sites that are available only to administrators.
@@ -146,6 +146,15 @@ https://wp-staging.com
146
 
147
  == Changelog ==
148
 
 
 
 
 
 
 
 
 
 
149
  = 2.3.5 =
150
  * New: Enable Optimizer as default option
151
  * New: Add filter to exclude strings from search & replace, docs: https://wp-staging.com/docs/actions-and-filters/
@@ -173,6 +182,6 @@ Complete changelog: [https://wp-staging.com/wp-staging-changelog](https://wp-sta
173
 
174
  == Upgrade Notice ==
175
 
176
- = 2.3.5 =
177
- * New: Compatible to WordPress 4.9.8
178
 
9
  Tags: staging, duplication, cloning, clone, migration, sandbox, test site, testing, backup, post, admin, administration, duplicate posts
10
  Requires at least: 3.6+
11
  Tested up to: 4.9
12
+ Stable tag: 2.3.6
13
  Requires PHP: 5.3
14
 
15
  A duplicator plugin! Clone, duplicate and migrate live sites to independent staging and development sites that are available only to administrators.
146
 
147
  == Changelog ==
148
 
149
+ = 2.3.6 =
150
+ * Fix: Add version number to css and js files to prevent caching issues
151
+ * Fix: Wrong text domain in a few language strings
152
+ * Fix: Optimizer mu-plugin not installed all the time
153
+ * Fix: Language files not loaded correctly
154
+ * Fix: Remove heartbeat check only on wp staging admin pages
155
+ * Fix: WordPress custom upload path variable upload_path could be wrong after cloning
156
+ * Fix: Increase maximum memory consumption
157
+
158
  = 2.3.5 =
159
  * New: Enable Optimizer as default option
160
  * New: Add filter to exclude strings from search & replace, docs: https://wp-staging.com/docs/actions-and-filters/
182
 
183
  == Upgrade Notice ==
184
 
185
+ = 2.3.6 =
186
+ * New: Compatible to WordPress 4.9.8. Important fixes!
187
 
wp-staging.php CHANGED
@@ -7,7 +7,7 @@
7
  * Author: WP-Staging
8
  * Author URI: https://wp-staging.com
9
  * Contributors: ReneHermi, ilgityildirim
10
- * Version: 2.3.5
11
  * Text Domain: wp-staging
12
  * Domain Path: /languages/
13
 
7
  * Author: WP-Staging
8
  * Author URI: https://wp-staging.com
9
  * Contributors: ReneHermi, ilgityildirim
10
+ * Version: 2.3.6
11
  * Text Domain: wp-staging
12
  * Domain Path: /languages/
13