OSDN Git Service

handle case where request to underscor.es fails
authorscribu <mail@scribu.net>
Mon, 28 Oct 2013 19:34:54 +0000 (21:34 +0200)
committerscribu <mail@scribu.net>
Mon, 28 Oct 2013 19:36:42 +0000 (21:36 +0200)
see #822

php/commands/scaffold.php

index f7ba9b8..31e6721 100644 (file)
@@ -203,12 +203,20 @@ class Scaffold_Command extends WP_CLI_Command {
                $tmpfname = wp_tempnam($url);
                $response = wp_remote_post( $url, array( 'timeout' => $timeout, 'body' => $body, 'stream' => true, 'filename' => $tmpfname ) );
 
-               if ( !is_wp_error( $response ) && $response['response']['code'] == 200 )
-                       WP_CLI::success( "Created theme '".$data['theme_name']."'." );
+               if ( is_wp_error( $response ) ) {
+                       WP_CLI::error( $response );
+               }
+
+               $response_code = wp_remote_retrieve_response_code( $response );
+               if ( 200 != $response_code ) {
+                       WP_CLI::error( "Couldn't create theme (received $response_code response)." );
+               }
 
                unzip_file( $tmpfname, $theme_path );
                unlink( $tmpfname );
 
+               WP_CLI::success( "Created theme '{$data['theme_name']}'." );
+
                if ( isset( $assoc_args['activate'] ) )
                        WP_CLI::run_command( array( 'theme', 'activate', $theme_slug ) );