2010-01-25 22:46:41 +00:00
<? php
2010-04-04 13:29:35 +00:00
/**
* Multisite delete site panel.
*
* @package WordPress
* @subpackage Multisite
* @since 3.0.0
*/
2013-09-25 00:18:11 +00:00
require_once ( dirname ( __FILE__ ) . '/admin.php' );
2010-01-25 22:46:41 +00:00
2017-11-30 23:11:00 +00:00
if ( ! is_multisite () ) {
2010-04-01 21:21:27 +00:00
wp_die ( __ ( 'Multisite support is not enabled.' ) );
2017-11-30 23:11:00 +00:00
}
2010-01-25 22:46:41 +00:00
2017-11-30 23:11:00 +00:00
if ( ! current_user_can ( 'delete_site' ) ) {
wp_die ( __ ( 'Sorry, you are not allowed to delete this site.' ) );
}
2010-05-03 20:26:11 +00:00
2010-04-01 21:21:27 +00:00
if ( isset ( $_GET [ 'h' ] ) && $_GET [ 'h' ] != '' && get_option ( 'delete_blog_hash' ) != false ) {
2016-07-10 19:43:28 +00:00
if ( hash_equals ( get_option ( 'delete_blog_hash' ), $_GET [ 'h' ] ) ) {
2017-10-02 01:44:47 +00:00
wpmu_delete_blog ( get_current_blog_id () );
2016-10-19 04:47:30 +00:00
wp_die ( sprintf ( __ ( 'Thank you for using %s, your site has been deleted. Happy trails to you until we meet again.' ), get_network () -> site_name ) );
2010-04-01 21:21:27 +00:00
} else {
2017-10-19 00:48:50 +00:00
wp_die ( __ ( 'Sorry, the link you clicked is stale. Please select another option.' ) );
2010-04-01 21:21:27 +00:00
}
}
2010-01-25 22:50:36 +00:00
2016-10-19 05:54:29 +00:00
$blog = get_site ();
2015-02-10 07:47:27 +00:00
$user = wp_get_current_user ();
2012-10-04 12:40:09 +00:00
2017-11-30 23:11:00 +00:00
$title = __ ( 'Delete Site' );
2010-01-25 22:46:41 +00:00
$parent_file = 'tools.php' ;
2013-09-25 00:18:11 +00:00
require_once ( ABSPATH . 'wp-admin/admin-header.php' );
2010-01-25 22:46:41 +00:00
echo '<div class="wrap">' ;
2015-06-27 15:41:25 +00:00
echo '<h1>' . esc_html ( $title ) . '</h1>' ;
2010-04-01 21:21:27 +00:00
if ( isset ( $_POST [ 'action' ] ) && $_POST [ 'action' ] == 'deleteblog' && isset ( $_POST [ 'confirmdelete' ] ) && $_POST [ 'confirmdelete' ] == '1' ) {
2011-05-22 23:18:58 +00:00
check_admin_referer ( 'delete-blog' );
2010-04-01 21:21:27 +00:00
$hash = wp_generate_password ( 20 , false );
update_option ( 'delete_blog_hash' , $hash );
2010-05-03 18:16:22 +00:00
$url_delete = esc_url ( admin_url ( 'ms-delete-site.php?h=' . $hash ) );
2010-04-01 21:21:27 +00:00
2016-10-26 15:36:31 +00:00
$switched_locale = switch_to_locale ( get_locale () );
2015-05-06 09:12:25 +00:00
/* translators: Do not translate USERNAME, URL_DELETE, SITE_NAME: those are placeholders. */
2017-11-30 23:11:00 +00:00
$content = __ (
"Howdy ###USERNAME###,
2015-02-10 07:47:27 +00:00
2010-04-01 21:21:27 +00:00
You recently clicked the 'Delete Site' link on your site and filled in a
2010-01-25 22:46:41 +00:00
form on that page.
2015-02-10 07:47:27 +00:00
2010-04-01 21:21:27 +00:00
If you really want to delete your site, click the link below. You will not
2010-02-08 16:18:13 +00:00
be asked to confirm again so only click this link if you are absolutely certain:
2010-04-01 21:21:27 +00:00
###URL_DELETE###
2010-01-25 22:46:41 +00:00
2010-04-01 21:21:27 +00:00
If you delete your site, please consider opening a new site here
some time in the future! (But remember your current site and username
2010-01-25 22:46:41 +00:00
are gone forever.)
Thanks for using the site,
Webmaster
2017-11-30 23:11:00 +00:00
###SITE_NAME###"
);
2013-09-13 09:11:09 +00:00
/**
2016-05-22 18:01:30 +00:00
* Filters the email content sent when a site in a Multisite network is deleted.
2013-09-13 09:11:09 +00:00
*
* @since 3.0.0
*
* @param string $content The email content that will be sent to the user who deleted a site in a Multisite network.
*/
$content = apply_filters ( 'delete_site_email_content' , $content );
2010-04-01 21:21:27 +00:00
2015-02-10 07:47:27 +00:00
$content = str_replace ( '###USERNAME###' , $user -> user_login , $content );
2010-04-01 21:21:27 +00:00
$content = str_replace ( '###URL_DELETE###' , $url_delete , $content );
2016-10-19 04:47:30 +00:00
$content = str_replace ( '###SITE_NAME###' , get_network () -> site_name , $content );
2010-04-01 21:21:27 +00:00
2017-11-30 23:11:00 +00:00
wp_mail ( get_option ( 'admin_email' ), '[ ' . wp_specialchars_decode ( get_option ( 'blogname' ) ) . ' ] ' . __ ( 'Delete My Site' ), $content );
2016-10-26 15:36:31 +00:00
if ( $switched_locale ) {
restore_previous_locale ();
}
2010-01-25 22:46:41 +00:00
?>
2010-04-01 21:21:27 +00:00
2017-11-30 23:11:00 +00:00
<p><?php _e( 'Thank you. Please check your email for a link to confirm your action. Your site will not be deleted until this link is clicked.' ); ?></p>
2010-04-01 21:21:27 +00:00
2018-08-17 01:51:36 +00:00
<?php
2017-11-30 23:11:00 +00:00
} else {
2010-04-01 21:21:27 +00:00
?>
2017-11-30 23:11:00 +00:00
<p><?php printf( __( 'If you do not want to use your %s site any more, you can delete it using the form below. When you click <strong>Delete My Site Permanently</strong> you will be sent an email with a link in it. Click on this link to delete your site.' ), get_network()->site_name ); ?></p>
<p><?php _e( 'Remember, once deleted your site cannot be restored.' ); ?></p>
2010-04-01 21:21:27 +00:00
<form method="post" name="deletedirect">
2017-11-30 23:11:00 +00:00
<?php wp_nonce_field( 'delete-blog' ); ?>
2010-04-01 21:21:27 +00:00
<input type="hidden" name="action" value="deleteblog" />
2017-11-30 23:11:00 +00:00
<p><input id="confirmdelete" type="checkbox" name="confirmdelete" value="1" /> <label for="confirmdelete"><strong>
<?php
2016-09-20 19:55:29 +00:00
printf(
/* translators: %s: site address */
__( "I'm sure I want to permanently disable my site, and I am aware I can never get it back or use %s again." ),
$blog->domain . $blog->path
);
2017-11-30 23:11:00 +00:00
?>
</strong></label></p>
2010-10-28 21:56:43 +00:00
<?php submit_button( __( 'Delete My Site Permanently' ) ); ?>
2010-04-01 21:21:27 +00:00
</form>
2017-11-30 23:11:00 +00:00
<?php
2010-01-25 22:46:41 +00:00
}
echo '</div>';
2013-09-25 00:18:11 +00:00
include( ABSPATH . 'wp-admin/admin-footer.php' );