get('Template') ); if( $parent->get('Name') === 'Luxeritas' ) { $mods = get_theme_mods(); if( isset( $mods['amp_enable'] ) ) { if( $_is_admin === false ) { if( function_exists( 'get_plugins' ) === false ) { require_once ABSPATH . 'wp-admin/includes/plugin.php'; } $all_plugins = get_plugins(); $active_plugins = array(); foreach( (array)$all_plugins as $key => $val ) { if( array_key_exists( 'amp_plugin_' . strlen( $key ) . '_' . md5( $key ), $mods ) || stripos( $key, 'wp-multibyte-patch/' ) === 0 || stripos( $key, 'erase-link-to-luxeritas/' ) === 0 ) { if( is_plugin_active( $key ) === true && in_array( $key, $active_plugins, true ) === false ) $active_plugins[] = $key; } } add_filter( 'pre_option_active_plugins', function() use( $active_plugins ) { return $active_plugins; }, 10, 1 ); } } else { $this->self_delete(); } } else { $this->self_delete(); } } /*--------------------------------------------------------------------------- * filesystem *---------------------------------------------------------------------------*/ private function init_filesystem( $url = null ) { global $wp_filesystem; require_once( ABSPATH . 'wp-admin/includes/file.php' ); if( $url === null ) { $url = wp_nonce_url( 'customize.php?return=' . rawurlencode( wp_unslash( $_SERVER['REQUEST_URI'] ) ) ); } $creds = request_filesystem_credentials( $url, '', false, false, null ); // Writable or Check if( false === ( $creds = request_filesystem_credentials( $url, '', false, false, null ) ) ) { return false; } // WP_Filesystem_Base init if( false === WP_Filesystem( $creds ) ) { request_filesystem_credentials( $url, '', true, false, null ); return false; } return; } /*--------------------------------------------------------------------------- * self delete *---------------------------------------------------------------------------*/ private function self_delete() { global $wp_filesystem; if( $this->init_filesystem( site_url() ) === false ) return false; if( file_exists( __FILE__ ) === true ) { if( $wp_filesystem->delete( __FILE__, false ) === false ) { // When it failed to delete itself add_action( 'admin_notices', function() { echo '
';
echo sprintf(
__( 'File deletion failed. Please remove %s.', 'luxeritas' ),
__FILE__
);
echo '