WordPress netinstall

Ce script permet d’installer WordPress sans avoir à télécharger l’archive, la décompresser et la déposer sur un serveur.

Il suffit de déposer le script dans le dossier où vous voulez installer WordPress et d’aller le visiter avec votre navigateur.

<?php
// This script download and unzip the latest version of WordPress
//
// Put this file in the folder where you want to install WordPress
// Visit it with your browser
// Follow the installation process

$local_zip = 'latest.zip';
$path = dirname(__FILE__);

// download latest version
copy('https://wordpress.org/latest.zip', $local_zip);
$zip = new ZipArchive;
$res = $zip->open($local_zip);
if ($res === true) {
    // unzip
    $zip->extractTo($path);
    $zip->close();
  
    // delete temporary files
    unlink($local_zip);
    unlink(__FILE__);
    
    // move files to current folder
    rename_dir($path.DIRECTORY_SEPARATOR.'wordpress', $path);
    
    // redirect to installation script
    header('Location: index.php');
} else {
    echo 'doh!';
}

// http://de.php.net/manual/fr/function.copy.php#91010
function rename_dir($src, $dst)
{
    $dir = @opendir($src);
    if ($dir && (is_dir($dst) || @mkdir($dst))) {
        while (false !== ( $file = readdir($dir))) {
            if (( $file != '.' ) && ( $file != '..' )) {
                if (is_dir($src.DIRECTORY_SEPARATOR.$file)) {
                    if (!rename_dir($src.DIRECTORY_SEPARATOR.$file, $dst.DIRECTORY_SEPARATOR.$file)) {
                        return false;
                    }
                } else {
                    if (!@copy($src.DIRECTORY_SEPARATOR.$file, $dst.DIRECTORY_SEPARATOR.$file)) {
                        return false;
                    }
                    @unlink($src.DIRECTORY_SEPARATOR.$file);
                }
            }
        }
        closedir($dir);
        @rmdir($src);
        return true;
    }
    return false;
}