wp_admin_bar_render()WP 3.1.0

Renders the admin bar to the page based on the $wp_admin_bar->menu member var.

This is called very early on the wp_body_open action so that it will render before anything else being added to the page body.

For backward compatibility with themes not using the wp_body_open the function is also called late on wp_footer.

It includes the admin_bar_menu action which should be used to hook in and add new menus to the admin bar. This also gives you access to the $post global, among others.

Returns

null. Nothing (null).

Usage

wp_admin_bar_render();

Notes

  • Global. WP_Admin_Bar. $wp_admin_bar

Changelog

Since 3.1.0 Introduced.
Since 5.4.0 Called on wp_body_open first, with wp_footer a fallback.

wp_admin_bar_render() code WP 6.8.1

function wp_admin_bar_render() {
	global $wp_admin_bar;
	static $rendered = false;

	if ( $rendered ) {
		return;
	}

	if ( ! is_admin_bar_showing() || ! is_object( $wp_admin_bar ) ) {
		return;
	}

	/**
	 * Loads all necessary admin bar items.
	 *
	 * This hook can add, remove, or manipulate admin bar items. The priority
	 * determines the placement for new items, and changes to existing items
	 * would require a high priority. To remove or manipulate existing nodes
	 * without a specific priority, use `wp_before_admin_bar_render`.
	 *
	 * @since 3.1.0
	 *
	 * @param WP_Admin_Bar $wp_admin_bar The WP_Admin_Bar instance, passed by reference.
	 */
	do_action_ref_array( 'admin_bar_menu', array( &$wp_admin_bar ) );

	/**
	 * Fires before the admin bar is rendered.
	 *
	 * @since 3.1.0
	 */
	do_action( 'wp_before_admin_bar_render' );

	$wp_admin_bar->render();

	/**
	 * Fires after the admin bar is rendered.
	 *
	 * @since 3.1.0
	 */
	do_action( 'wp_after_admin_bar_render' );

	$rendered = true;
}