admin_url( string $path = '', string $scheme = 'admin' ): string
- Since
- 2.6.0
- Source
wp-includes/link-template.php:3564
Get the URL of the WordPress admin area with admin_url(), optionally appending a path such as 'options-general.php' with the correct scheme. The default 'admin' scheme honors force_ssl_admin() and is_ssl(), so links keep working when the dashboard is forced to https.
Parameters
$pathstringoptional- Path relative to the admin URL. Default empty.Default:
'' $schemestringoptional- The scheme to use. Default is 'admin', which obeys force_ssl_admin() and is_ssl(). 'http' or 'https' can be passed to force those schemes.Default:
'admin'
Return
string- Admin URL link with optional path appended.
Examples
Every example is editable and runs in a real WordPress booted in your browser by WordPress Playground. Press Run, then edit the code: clicking away re-runs it. Nothing is sent anywhere until you do.
Link to a plugin settings page
Build dashboard links from admin_url() plus add_query_arg() instead of hard-coding /wp-admin/, which breaks on subdirectory installs.
$settings_url = add_query_arg(
array( 'page' => 'myplugin' ),
admin_url( 'options-general.php' )
);
printf(
'<a href="%s">%s</a>',
esc_url( $settings_url ),
esc_html__( 'Plugin settings', 'myplugin' )
);admin_url() always targets the current site. On multisite, use network_admin_url() for network admin pages or get_admin_url( $blog_id ) to link into another site's dashboard.
Uses · 1
- get_admin_url()Retrieves the URL to the admin area for a given site.
Used by · 50
- Custom_Background::admin_page()Displays the custom background page.
- Custom_Image_Header::help()Adds contextual help.
- Custom_Image_Header::step_1()Displays first step of custom header image page.
- Featured_Content::customize_register()Add settings to the Customizer.
- Plugin_Installer_Skin::after()Performs an action following a plugin install.
- Theme_Installer_Skin::after()Performs an action following a single theme install.
- Theme_Upgrader_Skin::after()Performs an action following a single theme update.
- WP_Automatic_Updater::send_email()Sends an email upon the completion or failure of a background core update.
- WP_Automatic_Updater::send_plugin_theme_email()Sends an email upon the completion or failure of a plugin or theme background update.
- WP_Comments_List_Table::column_author()
- WP_Comments_List_Table::get_views()
- WP_Customize_Manager::customize_pane_settings()Prints JavaScript settings for parent window.
Show all 50
- WP_Customize_Manager::get_return_url()Gets URL to link the user to when closing the Customizer.
- WP_Customize_Manager::is_cross_domain()Determines whether the admin and the frontend are on different domains.
- WP_Embed::maybe_run_ajax_cache()If a post/page was saved, then output JavaScript to make an Ajax request that will call WP_Embed::cache_oembed().
- WP_List_Table::comments_bubble()Displays a comment count bubble.
- WP_Nav_Menu_Widget::form()Outputs the settings form for the Navigation Menu widget.
- WP_Plugin_Dependencies::check_plugin_dependencies_during_ajax()Checks plugin dependencies after a plugin is installed via AJAX.
- WP_Plugin_Dependencies::display_admin_notice_for_unmet_dependencies()Displays an admin notice if dependencies are not installed.
- WP_Plugins_List_Table::no_items()
- WP_Posts_List_Table::handle_row_actions()Generates and displays row action links.
- WP_Privacy_Data_Export_Requests_List_Table::column_email()Actions column.
- WP_Privacy_Data_Export_Requests_List_Table::column_next_steps()Displays the next steps column.
- WP_Privacy_Data_Removal_Requests_List_Table::column_email()Outputs the Actions column.
- WP_Privacy_Data_Removal_Requests_List_Table::column_next_steps()Outputs the Next steps column.
- WP_Privacy_Policy_Content::notice()Adds a notice with a link to the guide when editing the privacy policy page.
- WP_Privacy_Policy_Content::policy_text_changed_notice()Outputs a warning when some privacy info has changed.
- WP_Privacy_Requests_Table::get_admin_url()Normalizes the admin URL to the current page (by request_type).
- WP_Recovery_Mode::handle_exit_recovery_mode()Handles a request to exit Recovery Mode.
- WP_Site_Health::get_test_authorization_header()Tests if the Authorization header has the expected values.
- WP_Site_Health::get_test_https_status()Tests if the site is serving content over HTTPS.
- WP_Site_Health::get_test_plugin_version()Tests if plugins are outdated, or unnecessary.
- WP_Site_Health::get_test_theme_version()Tests if themes are outdated, or unnecessary.
- WP_Site_Health::get_test_wordpress_version()Tests for WordPress version and outputs it.
- WP_Site_Health::wp_cron_scheduled_check()Runs the scheduled event to check and update the latest site health status for the website.
- WP_Themes_List_Table::no_items()
- WP_Widget_Media::get_l10n_defaults()Returns the default localized strings used by the widget.
- WP_Widget_Media_Audio::__construct()Constructor.
- WP_Widget_Media_Image::__construct()Constructor.
- WP_Widget_Media_Video::__construct()Constructor.
- Walker_Nav_Menu_Edit::start_el()Start the element output.
- _WP_Editors::editor_js()Print (output) the TinyMCE configuration and initialization scripts.
- _admin_notice_post_locked()Outputs the HTML for the notice to say that someone else is editing or has taken over editing of this post.
- _wp_customize_loader_settings()Adds settings for the customize-loader script.
- _wp_privacy_send_request_confirmation_notification()Notifies the site administrator via email when a request is confirmed.
- check_admin_referer()Ensures intent by verifying that a user was referred from another admin page with the correct security nonce.
- deactivated_plugins_notice()Renders an admin notice when a plugin was deactivated during an update.
- get_allowed_http_origins()Retrieves list of allowed HTTP origins.
- get_dashboard_url()Retrieves the URL to the user's dashboard.
- get_default_block_editor_settings()Returns the default block editor settings.
Source
function admin_url( $path = '', $scheme = 'admin' ) { return get_admin_url( null, $path, $scheme );}History
Introduced in 2.6.0. Unchanged from 6.7.7 through 7.1.0.
Signature, return type and hooks compared across 5 parsed releases.
About this page
- Parsed data
- Generated from the wordpress-develop 6.8.8 tag, from
src/wp-includes/link-template.php, and regenerated for each WordPress release so it tracks the code rather than a snapshot of it. - Corrections
- Something wrong on this page? Report it and it gets fixed in the next regeneration.