can_edit_network example

$id = isset( $_REQUEST['id'] ) ? (int) $_REQUEST['id'] : 0;

if ( ! $id ) {
    wp_die( __( 'Invalid site ID.' ) );
}

$details = get_site( $id );
if ( ! $details ) {
    wp_die( __( 'The requested site does not exist.' ) );
}

if ( ! can_edit_network( $details->site_id ) ) {
    wp_die( __( 'Sorry, you are not allowed to access this page.' ), 403 );
}

$parsed_scheme = parse_url( $details->siteurl, PHP_URL_SCHEME );
$is_main_site  = is_main_site( $id );

if ( isset( $_REQUEST['action'] ) && 'update-site' === $_REQUEST['action'] ) {
    check_admin_referer( 'edit-site' );

    switch_to_blog( $id );

    
$id = isset( $_REQUEST['id'] ) ? (int) $_REQUEST['id'] : 0;

if ( ! $id ) {
    wp_die( __( 'Invalid site ID.' ) );
}

$details = get_site( $id );
if ( ! $details ) {
    wp_die( __( 'The requested site does not exist.' ) );
}

if ( ! can_edit_network( $details->site_id ) ) {
    wp_die( __( 'Sorry, you are not allowed to access this page.' ), 403 );
}

$is_main_site = is_main_site( $id );

switch_to_blog( $id );

$action = $wp_list_table->current_action();

if ( $action ) {

    
$id = isset( $_REQUEST['id'] ) ? (int) $_REQUEST['id'] : 0;

if ( ! $id ) {
    wp_die( __( 'Invalid site ID.' ) );
}

$details = get_site( $id );
if ( ! $details ) {
    wp_die( __( 'The requested site does not exist.' ) );
}

if ( ! can_edit_network( $details->site_id ) ) {
    wp_die( __( 'Sorry, you are not allowed to access this page.' ), 403 );
}

$is_main_site = is_main_site( $id );

if ( isset( $_REQUEST['action'] ) && 'update-site' === $_REQUEST['action'] && is_array( $_POST['option'] ) ) {
    check_admin_referer( 'edit-site' );

    switch_to_blog( $id );

    $skip_options = array( 'allowedthemes' ); // Don't update these options since they are handled elsewhere in the form.
if ( ! $id ) {
    wp_die( __( 'Invalid site ID.' ) );
}

$wp_list_table->prepare_items();

$details = get_site( $id );
if ( ! $details ) {
    wp_die( __( 'The requested site does not exist.' ) );
}

if ( ! can_edit_network( $details->site_id ) ) {
    wp_die( __( 'Sorry, you are not allowed to access this page.' ), 403 );
}

$is_main_site = is_main_site( $id );

if ( $action ) {
    switch_to_blog( $id );
    $allowed_themes = get_option( 'allowedthemes' );

    switch ( $action ) {
        case 'enable':
            

    public function column_blogs( $user ) {
        $blogs = get_blogs_of_user( $user->ID, true );
        if ( ! is_array( $blogs ) ) {
            return;
        }

        foreach ( $blogs as $site ) {
            if ( ! can_edit_network( $site->site_id ) ) {
                continue;
            }

            $path         = ( '/' === $site->path ) ? '' : $site->path;
            $site_classes = array( 'site-' . $site->site_id );
            /** * Filters the span class for a site listing on the mulisite user list table. * * @since 5.2.0 * * @param string[] $site_classes Array of class names used within the span tag. Default "site-#" with the site's network ID. * @param int $site_id Site ID. * @param int $network_id Network ID. * @param WP_User $user WP_User object. */
Home | Imprint | This part of the site doesn't use cookies.