Presente en WordCamp Las Peñitas en Nicaragua sobre WP-CLI.
¡Gracias a los organizadores para la invitación y su hospitalidad!
Aunque ya añadiré mas sobre el evento, por ahora aquí tienen las transparencias en PDF.
Debajo, pueden verlas incluido desde SpeakerDeck, y también el codigo del plugin de backup:
¡Si tienen preguntas, deja un comentario aquí!
<?php WP_CLI::add_command( 'migrate', 'DH_Migrate_Command' ); /** * DreamHost Migrate Plugin * * @package DH_Migrate_Command * @subpackage commands/community * @maintainer Mike Schroder */ class DH_Migrate_Command extends WP_CLI_Command { /** * Guarda WordPress entero, encluyendo core, plugins y la base de datos. * * ## OPTIONS * * [<backup-filename>] * : Fichero donde guardar la copia de seguridad * * [--no-db] * : No crea copia de seguridad de la base de datos dentro del archivo creado * * [--db-name=<filename>] * : Guarda el base de datos en el archivo con el nombre <filename> * * @param array $args * @param array $assoc_args */ function backup( $args, $assoc_args ) { $filename = $dbname = null; $backup_directory = '../'; // Si no specifica un nombre para el fichero, usa "Titulo del blog.tar.gz" if ( empty( $args ) ) $filename = $backup_directory . get_bloginfo() . '.tar.gz'; else $filename = $args[0]; // Si specifica --no-db, no guarda la base de datos. if ( ! isset( $assoc_args['no-db'] ) ) { $dbname = isset( $assoc_args['db-name'] ) ? $assoc_args['db-name'] : 'database_backup.sql'; WP_CLI::run_command( array( 'db', 'export', $backup_directory . $dbname ), array() ); } // Utilizamos esc_cmd para filtrar los argumentos automaticamente. // No podemos utilizar --exclude-vcs, porque no funciona en OSX. WP_CLI::line( "Guardando en $filename ..." ); $result = WP_CLI::launch( \WP_CLI\Utils\esc_cmd( " tar --exclude '.git' --exclude '.svn' --exclude '.hg' --exclude '.bzr' -czf %s . -C %s %s ", $filename, $backup_directory, $dbname ), false ); // Si creimos una copia de la base de datos, borra la copia temporal. if ( $dbname && ! unlink( $backup_directory . $dbname ) ) WP_CLI::warning( "No pude borrar la base de datos temporal, '$dbname'." ); if ( 0 == $result ) { WP_CLI::success( "Copia de seguridad creado." ); } else { WP_CLI::error( "Creatión de la copia de seguridad ha fallado." ); } } // Termina backup } // Termina DH_Migrate_Command
One thought on “WordCamp Las Peñitas – WP-CLI”