# get_dashboard_url()

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

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

## Сигнатура

```php
get_dashboard_url( int $user_id, string $path = '', string $scheme = 'admin' ): string
```

## Описание

Если пользователь не принадлежит ни одному сайту, используется глобальная консоль пользователя. Если пользователь принадлежит текущему сайту, возвращается консоль текущего сайта. Если пользователь не может редактировать текущий сайт, возвращается консоль его основного сайта.

## Параметры

- `$user_id` `int` — необязательный. ID пользователя. По умолчанию текущий пользователь.
- `$path` `string` — необязательный, по умолчанию `''`. Необязательный путь относительно консоли. Используйте только пути, известные администраторам как сайта, так и пользователя.
- `$scheme` `string` — необязательный, по умолчанию `'admin'`. Используемая схема. Значение по умолчанию 'admin', которое подчиняется force_ssl_admin() и is_ssl() . Можно передать 'http' или 'https', чтобы принудительно задать эти схемы.

## Возвращаемое значение

`string`

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

Файл: `wp-includes/link-template.php:3984`

```php
function get_dashboard_url( $user_id = 0, $path = '', $scheme = 'admin' ) {
	$user_id = $user_id ? (int) $user_id : get_current_user_id();

	$blogs = get_blogs_of_user( $user_id );

	if ( is_multisite() && ! user_can( $user_id, 'manage_network' ) && empty( $blogs ) ) {
		$url = user_admin_url( $path, $scheme );
	} elseif ( ! is_multisite() ) {
		$url = admin_url( $path, $scheme );
	} else {
		$current_blog = get_current_blog_id();

		if ( $current_blog && ( user_can( $user_id, 'manage_network' ) || in_array( $current_blog, array_keys( $blogs ), true ) ) ) {
			$url = admin_url( $path, $scheme );
		} else {
			$active = get_active_blog_for_user( $user_id );
			if ( $active ) {
				$url = get_admin_url( $active->blog_id, $path, $scheme );
			} else {
				$url = user_admin_url( $path, $scheme );
			}
		}
	}

	/**
	 * Filters the dashboard URL for a user.
	 *
	 * @since 3.1.0
	 *
	 * @param string $url     The complete URL including scheme and path.
	 * @param int    $user_id The user ID.
	 * @param string $path    Path relative to the URL. Blank string if no path is specified.
	 * @param string $scheme  Scheme to give the URL context. Accepts 'http', 'https', 'login',
	 *                        'login_post', 'admin', 'relative' or null.
	 */
	return apply_filters( 'user_dashboard_url', $url, $user_id, $path, $scheme );
}
```

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

- 3.1.0 — Introduced.

## Связанные

Использует: [`user_can`](https://chugunov.pro/api-wordpress/functions/user_can/), [`user_admin_url`](https://chugunov.pro/api-wordpress/functions/user_admin_url/), [`get_admin_url`](https://chugunov.pro/api-wordpress/functions/get_admin_url/), [`get_blogs_of_user`](https://chugunov.pro/api-wordpress/functions/get_blogs_of_user/), [`get_active_blog_for_user`](https://chugunov.pro/api-wordpress/functions/get_active_blog_for_user/), [`is_multisite`](https://chugunov.pro/api-wordpress/functions/is_multisite/), [`get_current_blog_id`](https://chugunov.pro/api-wordpress/functions/get_current_blog_id/), [`admin_url`](https://chugunov.pro/api-wordpress/functions/admin_url/), [`apply_filters`](https://chugunov.pro/api-wordpress/functions/apply_filters/), [`get_current_user_id`](https://chugunov.pro/api-wordpress/functions/get_current_user_id/).
Используется в: [`wp_admin_bar_dashboard_view_site_menu`](https://chugunov.pro/api-wordpress/functions/wp_admin_bar_dashboard_view_site_menu/), [`get_edit_profile_url`](https://chugunov.pro/api-wordpress/functions/get_edit_profile_url/), [`wp_admin_bar_wp_menu`](https://chugunov.pro/api-wordpress/functions/wp_admin_bar_wp_menu/), [`wp_admin_bar_my_account_item`](https://chugunov.pro/api-wordpress/functions/wp_admin_bar_my_account_item/), [`wp_admin_bar_my_account_menu`](https://chugunov.pro/api-wordpress/functions/wp_admin_bar_my_account_menu/).

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