# wp_switch_roles_and_user()

URL: https://chugunov.pro/api-wordpress/functions/wp_switch_roles_and_user/
Проверено на WordPress 6.9, обновлено 06.08.2026.
Источник: независимый русскоязычный справочник chugunov.pro. Не является официальной документацией WordPress.

Тип: функция.
Появился в версии: 4.9.0.

## Сигнатура

```php
wp_switch_roles_and_user( int $new_site_id, int $old_site_id )
```

## Описание

Переключает инициализированные роли и права доступа текущего пользователя на другой сайт.

## Параметры

- `$new_site_id` `int` — обязательный. ID нового сайта.
- `$old_site_id` `int` — обязательный. ID прежнего сайта.

## Исходный код

Файл: `wp-includes/ms-blogs.php:695`

```php
function wp_switch_roles_and_user( $new_site_id, $old_site_id ) {
	if ( $new_site_id === $old_site_id ) {
		return;
	}

	if ( ! did_action( 'init' ) ) {
		return;
	}

	wp_roles()->for_site( $new_site_id );
	wp_get_current_user()->for_site( $new_site_id );
}
```

## История изменений

- 4.9.0 — Introduced.

## Связанные

Использует: `WP_Roles::for_site`, [`wp_roles`](https://chugunov.pro/api-wordpress/functions/wp_roles/), [`WP_Roles`](https://chugunov.pro/api-wordpress/functions/wp_roles/), [`wp_get_current_user`](https://chugunov.pro/api-wordpress/functions/wp_get_current_user/), [`did_action`](https://chugunov.pro/api-wordpress/functions/did_action/).

Оригинал в официальной документации: https://developer.wordpress.org/reference/functions/wp_switch_roles_and_user/
