] * : How many requests to create. * --- * default: 30 * --- * * [--votes=] * : How many votes to spread over them. A few requests get many, most get few. * --- * default: 400 * --- * * [--delete] * : Delete the sample requests instead of creating more. * * ## EXAMPLES * * wp mwtfrs seed * wp mwtfrs seed --requests=1000 --votes=50000 * wp mwtfrs seed --delete * * @when after_wp_load * * @param string[] $args Positional arguments. None are used. * @param array $assoc_args Options. */ public function seed( array $args, array $assoc_args ): void { if ( ! empty( $assoc_args['delete'] ) ) { $deleted = SampleData::delete(); WP_CLI::success( sprintf( 'Deleted %1$d sample %2$s.', $deleted, 1 === $deleted ? 'request' : 'requests' ) ); return; } $requests = (int) ( $assoc_args['requests'] ?? 30 ); $votes = (int) ( $assoc_args['votes'] ?? 400 ); $created = SampleData::create( $requests, $votes, static function ( int $done ) use ( $requests ): void { if ( 0 === $done % 100 && $done < $requests ) { WP_CLI::log( sprintf( '%1$d of %2$d requests created.', $done, $requests ) ); } } ); WP_CLI::success( sprintf( 'Created %1$d sample %2$s with %3$d %4$s. Remove them with: wp %5$s seed --delete', $created['requests'], 1 === $created['requests'] ? 'request' : 'requests', $created['votes'], 1 === $created['votes'] ? 'vote' : 'votes', self::NAME ) ); } }