wppaste
WordPress

wp_admin_bar_edit_menu( WP_Admin_Bar $wp_admin_bar )

Since
3.1.0, 5.5.0
Source
wp-includes/admin-bar.php:811
Provides an edit link for posts and terms.

Compatibility

WordPress
since 5.5.0
PHP
7.4–8.6-dev
  • 6.7.7
  • 6.8.8
  • 6.9.7
  • 7.0.4
  • 7.1.0

Present in every tracked release (6.7.7 to 7.1.0), and compiles on PHP 7.4 through 8.6-dev.

Parameters

$wp_admin_barWP_Admin_Bar
The WP_Admin_Bar instance.

Performance profile

How much work a call to wp_admin_bar_edit_menu() does, and what it touches: the algorithmic scaling, the Zend instruction count per call across PHP versions, the hooks it hands control to, and the core code that calls it. Measured from the compiled opcodes, not a stopwatch, so every number is identical on any machine running the same PHP version, and every function in core is ranked by cost.

Cost class
Heavy

Reaches the database via get_post().

Scaling
Constant

No loop in the body: the same number of instructions runs whatever you pass in.

Instructions
14–110

Executed per call on PHP 8.5, depending on the branch taken. The body compiles to 307.

Plugin surface
None

Nothing here hands control to plugin code.

Called by
0

Nothing in core calls this; the cost is only what you spend yourself.

What it touches

  • querycontent queryget_post()called directly
  • optionoption read or writeget_option()called directly
  • hookthird-party callbacksapply_filters()one call below wp_admin_bar_edit_menu()
  • cacheobject cachewp_cache_get()one call below wp_admin_bar_edit_menu()
  • serializeserialisationmaybe_unserialize()one call below wp_admin_bar_edit_menu()

Further down the call graph this can also reach transient. That is the worst case, several calls deep and usually down an error path, not what a normal call pays.

What one call costs · 118 distinct outcomes

One number would be a lie: the work depends on which branch runs. These are every distinct cost wp_admin_bar_edit_menu() can have, taken from its control-flow graph on PHP 8.5.

WhenInstructionsCalls it makes
!is_admin() && empty($current_object)14–20is_admin(), ->get_queried_object()
!is_admin() && $current_object instanceof && !current_user_can()27is_admin(), ->get_queried_object(), current_user_can()
!is_admin() && !empty($current_object)29–30is_admin(), ->get_queried_object(), get_post_type_object(), get_edit_post_link()
!is_admin() && $current_object instanceof && current_user_can()34is_admin(), ->get_queried_object(), current_user_can(), get_edit_user_link()
!is_admin()34–35is_admin(), ->get_queried_object(), get_taxonomy(), get_edit_term_link()
!is_admin() && !empty($current_object)37–39is_admin(), ->get_queried_object(), get_post_type_object(), get_edit_post_link(), current_user_can()
is_admin()40–56is_admin(), get_current_screen(), get_post()
!is_admin() && !current_user_can()42is_admin(), ->get_queried_object(), get_taxonomy(), get_edit_term_link(), current_user_can()
!is_admin() && $current_object instanceof && current_user_can()43is_admin(), ->get_queried_object(), current_user_can(), get_edit_user_link(), __(), edit()
is_admin()46–61is_admin(), get_current_screen(), get_post(), get_post()
!is_admin() && !empty($current_object) && current_user_can() && $post_type_object47is_admin(), ->get_queried_object(), get_post_type_object(), get_edit_post_link(), current_user_can(), edit()
is_admin() && isset($tag) && is_object($tag) && is_wp_error()48–60is_admin(), get_current_screen(), get_post(), is_wp_error()
106 further outcomes, up to 110 instructions
is_admin()48–67is_admin(), get_current_screen(), get_post(), current_user_can()
!is_admin() && current_user_can()50is_admin(), ->get_queried_object(), get_taxonomy(), get_edit_term_link(), current_user_can(), edit()
is_admin() && $post_type_object && !get_post_type_archive_link()51–62is_admin(), get_current_screen(), get_post(), get_post_type_archive_link()
is_admin() && isset($tag) && is_object($tag) && is_wp_error()54–65is_admin(), get_current_screen(), get_post(), get_post(), is_wp_error()
is_admin()54–69is_admin(), get_current_screen(), get_post(), get_post(), current_user_can()
is_admin() && isset($user_id)55–70is_admin(), get_current_screen(), get_post(), get_userdata(), get_author_posts_url(), ->exists()
is_admin() && isset($tag) && is_object($tag) && !is_wp_error() && !is_term_publicly_viewable()55–65is_admin(), get_current_screen(), get_post(), is_wp_error(), get_taxonomy(), is_term_publicly_viewable()
is_admin() && isset($tag) && is_object($tag) && is_wp_error()56–71is_admin(), get_current_screen(), get_post(), current_user_can(), is_wp_error()
is_admin() && $post_type_object && !get_post_type_archive_link()57–66is_admin(), get_current_screen(), get_post(), get_post(), get_post_type_archive_link()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($tag) && is_object($tag) && is_wp_error()59–66is_admin(), get_current_screen(), get_post(), get_post_type_archive_link(), is_wp_error()
is_admin() && $post_type_object && get_post_type_archive_link()59–70is_admin(), get_current_screen(), get_post(), get_post_type_archive_link(), get_option()
is_admin() && $post_type_object && !get_post_type_archive_link()59–73is_admin(), get_current_screen(), get_post(), current_user_can(), get_post_type_archive_link()
is_admin() && current_user_can() && $post_type_object59–63is_admin(), get_current_screen(), get_post(), current_user_can(), get_permalink(), view()
is_admin() && $post_type_object && get_post_type_archive_link()61–66is_admin(), get_current_screen(), get_post(), get_post_type_archive_link(), get_post_type_archive_link(), archive()
is_admin() && isset($user_id)61–75is_admin(), get_current_screen(), get_post(), get_post(), get_userdata(), get_author_posts_url(), ->exists()
is_admin() && isset($tag) && is_object($tag) && !is_wp_error() && !is_term_publicly_viewable()61–70is_admin(), get_current_screen(), get_post(), get_post(), is_wp_error(), get_taxonomy(), is_term_publicly_viewable()
is_admin() && isset($tag) && is_object($tag) && is_wp_error()62–73is_admin(), get_current_screen(), get_post(), get_post(), current_user_can(), is_wp_error()
is_admin() && isset($tag) && is_object($tag) && is_wp_error() && isset($user_id)63–74is_admin(), get_current_screen(), get_post(), is_wp_error(), get_userdata(), get_author_posts_url(), ->exists()
is_admin() && isset($user_id)63–81is_admin(), get_current_screen(), get_post(), current_user_can(), get_userdata(), get_author_posts_url(), ->exists()
is_admin() && isset($tag) && is_object($tag) && !is_wp_error() && !is_term_publicly_viewable()63–76is_admin(), get_current_screen(), get_post(), current_user_can(), is_wp_error(), get_taxonomy(), is_term_publicly_viewable()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($tag) && is_object($tag) && is_wp_error()65–70is_admin(), get_current_screen(), get_post(), get_post(), get_post_type_archive_link(), is_wp_error()
is_admin() && $post_type_object && get_post_type_archive_link()65–74is_admin(), get_current_screen(), get_post(), get_post(), get_post_type_archive_link(), get_option()
is_admin() && $post_type_object && !get_post_type_archive_link()65–75is_admin(), get_current_screen(), get_post(), get_post(), current_user_can(), get_post_type_archive_link()
is_admin() && current_user_can() && $post_type_object65–69is_admin(), get_current_screen(), get_post(), current_user_can(), get_preview_post_link(), esc_url(), target()
is_admin() && current_user_can() && $post_type_object65is_admin(), get_current_screen(), get_post(), get_post(), current_user_can(), get_permalink(), view()
is_admin() && isset($user_id) && ->exists()65–79is_admin(), get_current_screen(), get_post(), get_userdata(), get_author_posts_url(), ->exists(), __(), view()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($user_id)66–76is_admin(), get_current_screen(), get_post(), get_post_type_archive_link(), get_userdata(), get_author_posts_url(), ->exists()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($tag) && is_object($tag) && !is_wp_error() && !is_term_publicly_viewable()66–71is_admin(), get_current_screen(), get_post(), get_post_type_archive_link(), is_wp_error(), get_taxonomy(), is_term_publicly_viewable()
is_admin() && $post_type_object && get_post_type_archive_link()66–71is_admin(), get_current_screen(), get_post(), get_post_type_archive_link(), get_option(), get_post_type_archive_link(), archive()
is_admin() && isset($tag) && is_object($tag) && !is_wp_error() && is_term_publicly_viewable()66–76is_admin(), get_current_screen(), get_post(), is_wp_error(), get_taxonomy(), is_term_publicly_viewable(), get_term_link(), view()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($tag) && is_object($tag) && is_wp_error()67–74is_admin(), get_current_screen(), get_post(), get_post_type_archive_link(), get_option(), is_wp_error()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($tag) && is_object($tag) && is_wp_error()67–77is_admin(), get_current_screen(), get_post(), current_user_can(), get_post_type_archive_link(), is_wp_error()
is_admin() && $post_type_object && get_post_type_archive_link()67–81is_admin(), get_current_screen(), get_post(), current_user_can(), get_post_type_archive_link(), get_option()
is_admin() && $post_type_object && get_post_type_archive_link()67–70is_admin(), get_current_screen(), get_post(), get_post(), get_post_type_archive_link(), get_post_type_archive_link(), archive()
is_admin() && $post_type_object && get_post_type_archive_link()69–77is_admin(), get_current_screen(), get_post(), current_user_can(), get_post_type_archive_link(), get_post_type_archive_link(), archive()
is_admin() && isset($tag) && is_object($tag) && is_wp_error() && isset($user_id)69–79is_admin(), get_current_screen(), get_post(), get_post(), is_wp_error(), get_userdata(), get_author_posts_url(), ->exists()
is_admin() && isset($user_id)69–83is_admin(), get_current_screen(), get_post(), get_post(), current_user_can(), get_userdata(), get_author_posts_url(), ->exists()
is_admin() && isset($tag) && is_object($tag) && !is_wp_error() && !is_term_publicly_viewable()69–78is_admin(), get_current_screen(), get_post(), get_post(), current_user_can(), is_wp_error(), get_taxonomy(), is_term_publicly_viewable()
is_admin() && isset($tag) && is_object($tag) && is_wp_error() && isset($user_id)71–85is_admin(), get_current_screen(), get_post(), current_user_can(), is_wp_error(), get_userdata(), get_author_posts_url(), ->exists()
is_admin() && current_user_can() && $post_type_object71is_admin(), get_current_screen(), get_post(), get_post(), current_user_can(), get_preview_post_link(), esc_url(), target()
is_admin() && isset($user_id) && ->exists()71–84is_admin(), get_current_screen(), get_post(), get_post(), get_userdata(), get_author_posts_url(), ->exists(), __(), view()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($user_id)72–80is_admin(), get_current_screen(), get_post(), get_post(), get_post_type_archive_link(), get_userdata(), get_author_posts_url(), ->exists()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($tag) && is_object($tag) && !is_wp_error() && !is_term_publicly_viewable()72–75is_admin(), get_current_screen(), get_post(), get_post(), get_post_type_archive_link(), is_wp_error(), get_taxonomy(), is_term_publicly_viewable()
is_admin() && $post_type_object && get_post_type_archive_link()72–75is_admin(), get_current_screen(), get_post(), get_post(), get_post_type_archive_link(), get_option(), get_post_type_archive_link(), archive()
is_admin() && isset($tag) && is_object($tag) && !is_wp_error() && is_term_publicly_viewable()72–81is_admin(), get_current_screen(), get_post(), get_post(), is_wp_error(), get_taxonomy(), is_term_publicly_viewable(), get_term_link(), view()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($tag) && is_object($tag) && is_wp_error()73–78is_admin(), get_current_screen(), get_post(), get_post(), get_post_type_archive_link(), get_option(), is_wp_error()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($tag) && is_object($tag) && is_wp_error()73–79is_admin(), get_current_screen(), get_post(), get_post(), current_user_can(), get_post_type_archive_link(), is_wp_error()
is_admin() && $post_type_object && get_post_type_archive_link()73–83is_admin(), get_current_screen(), get_post(), get_post(), current_user_can(), get_post_type_archive_link(), get_option()
is_admin() && isset($tag) && is_object($tag) && is_wp_error() && isset($user_id) && ->exists()73–83is_admin(), get_current_screen(), get_post(), is_wp_error(), get_userdata(), get_author_posts_url(), ->exists(), __(), view()
is_admin() && isset($user_id) && ->exists()73–90is_admin(), get_current_screen(), get_post(), current_user_can(), get_userdata(), get_author_posts_url(), ->exists(), __(), view()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($tag) && is_object($tag) && is_wp_error() && isset($user_id)74–80is_admin(), get_current_screen(), get_post(), get_post_type_archive_link(), is_wp_error(), get_userdata(), get_author_posts_url(), ->exists()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($user_id)74–84is_admin(), get_current_screen(), get_post(), get_post_type_archive_link(), get_option(), get_userdata(), get_author_posts_url(), ->exists()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($tag) && is_object($tag) && !is_wp_error() && !is_term_publicly_viewable()74–79is_admin(), get_current_screen(), get_post(), get_post_type_archive_link(), get_option(), is_wp_error(), get_taxonomy(), is_term_publicly_viewable()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($user_id)74–87is_admin(), get_current_screen(), get_post(), current_user_can(), get_post_type_archive_link(), get_userdata(), get_author_posts_url(), ->exists()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($tag) && is_object($tag) && !is_wp_error() && !is_term_publicly_viewable()74–82is_admin(), get_current_screen(), get_post(), current_user_can(), get_post_type_archive_link(), is_wp_error(), get_taxonomy(), is_term_publicly_viewable()
is_admin() && $post_type_object && get_post_type_archive_link()74–82is_admin(), get_current_screen(), get_post(), current_user_can(), get_post_type_archive_link(), get_option(), get_post_type_archive_link(), archive()
is_admin() && isset($tag) && is_object($tag) && !is_wp_error() && is_term_publicly_viewable()74–87is_admin(), get_current_screen(), get_post(), current_user_can(), is_wp_error(), get_taxonomy(), is_term_publicly_viewable(), get_term_link(), view()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($tag) && is_object($tag) && is_wp_error()75–85is_admin(), get_current_screen(), get_post(), current_user_can(), get_post_type_archive_link(), get_option(), is_wp_error()
is_admin() && $post_type_object && get_post_type_archive_link()75–79is_admin(), get_current_screen(), get_post(), get_post(), current_user_can(), get_post_type_archive_link(), get_post_type_archive_link(), archive()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($user_id) && ->exists()76–85is_admin(), get_current_screen(), get_post(), get_post_type_archive_link(), get_userdata(), get_author_posts_url(), ->exists(), __(), view()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($tag) && is_object($tag) && !is_wp_error() && is_term_publicly_viewable()77–82is_admin(), get_current_screen(), get_post(), get_post_type_archive_link(), is_wp_error(), get_taxonomy(), is_term_publicly_viewable(), get_term_link(), view()
is_admin() && isset($tag) && is_object($tag) && is_wp_error() && isset($user_id)77–87is_admin(), get_current_screen(), get_post(), get_post(), current_user_can(), is_wp_error(), get_userdata(), get_author_posts_url(), ->exists()
is_admin() && isset($tag) && is_object($tag) && is_wp_error() && isset($user_id) && ->exists()79–88is_admin(), get_current_screen(), get_post(), get_post(), is_wp_error(), get_userdata(), get_author_posts_url(), ->exists(), __(), view()
is_admin() && isset($user_id) && ->exists()79–92is_admin(), get_current_screen(), get_post(), get_post(), current_user_can(), get_userdata(), get_author_posts_url(), ->exists(), __(), view()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($tag) && is_object($tag) && is_wp_error() && isset($user_id)80–84is_admin(), get_current_screen(), get_post(), get_post(), get_post_type_archive_link(), is_wp_error(), get_userdata(), get_author_posts_url(), ->exists()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($user_id)80–88is_admin(), get_current_screen(), get_post(), get_post(), get_post_type_archive_link(), get_option(), get_userdata(), get_author_posts_url(), ->exists()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($tag) && is_object($tag) && !is_wp_error() && !is_term_publicly_viewable()80–83is_admin(), get_current_screen(), get_post(), get_post(), get_post_type_archive_link(), get_option(), is_wp_error(), get_taxonomy(), is_term_publicly_viewable()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($user_id)80–89is_admin(), get_current_screen(), get_post(), get_post(), current_user_can(), get_post_type_archive_link(), get_userdata(), get_author_posts_url(), ->exists()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($tag) && is_object($tag) && !is_wp_error() && !is_term_publicly_viewable()80–84is_admin(), get_current_screen(), get_post(), get_post(), current_user_can(), get_post_type_archive_link(), is_wp_error(), get_taxonomy(), is_term_publicly_viewable()
is_admin() && $post_type_object && get_post_type_archive_link()80–84is_admin(), get_current_screen(), get_post(), get_post(), current_user_can(), get_post_type_archive_link(), get_option(), get_post_type_archive_link(), archive()
is_admin() && isset($tag) && is_object($tag) && !is_wp_error() && is_term_publicly_viewable()80–89is_admin(), get_current_screen(), get_post(), get_post(), current_user_can(), is_wp_error(), get_taxonomy(), is_term_publicly_viewable(), get_term_link(), view()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($tag) && is_object($tag) && is_wp_error()81–87is_admin(), get_current_screen(), get_post(), get_post(), current_user_can(), get_post_type_archive_link(), get_option(), is_wp_error()
is_admin() && isset($tag) && is_object($tag) && is_wp_error() && isset($user_id) && ->exists()81–94is_admin(), get_current_screen(), get_post(), current_user_can(), is_wp_error(), get_userdata(), get_author_posts_url(), ->exists(), __(), view()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($tag) && is_object($tag) && is_wp_error() && isset($user_id)82–88is_admin(), get_current_screen(), get_post(), get_post_type_archive_link(), get_option(), is_wp_error(), get_userdata(), get_author_posts_url(), ->exists()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($tag) && is_object($tag) && is_wp_error() && isset($user_id)82–91is_admin(), get_current_screen(), get_post(), current_user_can(), get_post_type_archive_link(), is_wp_error(), get_userdata(), get_author_posts_url(), ->exists()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($user_id)82–95is_admin(), get_current_screen(), get_post(), current_user_can(), get_post_type_archive_link(), get_option(), get_userdata(), get_author_posts_url(), ->exists()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($tag) && is_object($tag) && !is_wp_error() && !is_term_publicly_viewable()82–90is_admin(), get_current_screen(), get_post(), current_user_can(), get_post_type_archive_link(), get_option(), is_wp_error(), get_taxonomy(), is_term_publicly_viewable()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($user_id) && ->exists()82–89is_admin(), get_current_screen(), get_post(), get_post(), get_post_type_archive_link(), get_userdata(), get_author_posts_url(), ->exists(), __(), view()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($tag) && is_object($tag) && !is_wp_error() && is_term_publicly_viewable()83–86is_admin(), get_current_screen(), get_post(), get_post(), get_post_type_archive_link(), is_wp_error(), get_taxonomy(), is_term_publicly_viewable(), get_term_link(), view()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($tag) && is_object($tag) && is_wp_error() && isset($user_id) && ->exists()84–89is_admin(), get_current_screen(), get_post(), get_post_type_archive_link(), is_wp_error(), get_userdata(), get_author_posts_url(), ->exists(), __(), view()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($user_id) && ->exists()84–93is_admin(), get_current_screen(), get_post(), get_post_type_archive_link(), get_option(), get_userdata(), get_author_posts_url(), ->exists(), __(), view()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($user_id) && ->exists()84–96is_admin(), get_current_screen(), get_post(), current_user_can(), get_post_type_archive_link(), get_userdata(), get_author_posts_url(), ->exists(), __(), view()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($tag) && is_object($tag) && !is_wp_error() && is_term_publicly_viewable()85–90is_admin(), get_current_screen(), get_post(), get_post_type_archive_link(), get_option(), is_wp_error(), get_taxonomy(), is_term_publicly_viewable(), get_term_link(), view()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($tag) && is_object($tag) && !is_wp_error() && is_term_publicly_viewable()85–93is_admin(), get_current_screen(), get_post(), current_user_can(), get_post_type_archive_link(), is_wp_error(), get_taxonomy(), is_term_publicly_viewable(), get_term_link(), view()
is_admin() && isset($tag) && is_object($tag) && is_wp_error() && isset($user_id) && ->exists()87–96is_admin(), get_current_screen(), get_post(), get_post(), current_user_can(), is_wp_error(), get_userdata(), get_author_posts_url(), ->exists(), __(), view()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($tag) && is_object($tag) && is_wp_error() && isset($user_id)88–92is_admin(), get_current_screen(), get_post(), get_post(), get_post_type_archive_link(), get_option(), is_wp_error(), get_userdata(), get_author_posts_url(), ->exists()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($tag) && is_object($tag) && is_wp_error() && isset($user_id)88–93is_admin(), get_current_screen(), get_post(), get_post(), current_user_can(), get_post_type_archive_link(), is_wp_error(), get_userdata(), get_author_posts_url(), ->exists()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($user_id)88–97is_admin(), get_current_screen(), get_post(), get_post(), current_user_can(), get_post_type_archive_link(), get_option(), get_userdata(), get_author_posts_url(), ->exists()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($tag) && is_object($tag) && !is_wp_error() && !is_term_publicly_viewable()88–92is_admin(), get_current_screen(), get_post(), get_post(), current_user_can(), get_post_type_archive_link(), get_option(), is_wp_error(), get_taxonomy(), is_term_publicly_viewable()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($tag) && is_object($tag) && is_wp_error() && isset($user_id)90–99is_admin(), get_current_screen(), get_post(), current_user_can(), get_post_type_archive_link(), get_option(), is_wp_error(), get_userdata(), get_author_posts_url(), ->exists()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($tag) && is_object($tag) && is_wp_error() && isset($user_id) && ->exists()90–93is_admin(), get_current_screen(), get_post(), get_post(), get_post_type_archive_link(), is_wp_error(), get_userdata(), get_author_posts_url(), ->exists(), __(), view()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($user_id) && ->exists()90–97is_admin(), get_current_screen(), get_post(), get_post(), get_post_type_archive_link(), get_option(), get_userdata(), get_author_posts_url(), ->exists(), __(), view()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($user_id) && ->exists()90–98is_admin(), get_current_screen(), get_post(), get_post(), current_user_can(), get_post_type_archive_link(), get_userdata(), get_author_posts_url(), ->exists(), __(), view()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($tag) && is_object($tag) && !is_wp_error() && is_term_publicly_viewable()91–94is_admin(), get_current_screen(), get_post(), get_post(), get_post_type_archive_link(), get_option(), is_wp_error(), get_taxonomy(), is_term_publicly_viewable(), get_term_link(), view()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($tag) && is_object($tag) && !is_wp_error() && is_term_publicly_viewable()91–95is_admin(), get_current_screen(), get_post(), get_post(), current_user_can(), get_post_type_archive_link(), is_wp_error(), get_taxonomy(), is_term_publicly_viewable(), get_term_link(), view()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($tag) && is_object($tag) && is_wp_error() && isset($user_id) && ->exists()92–97is_admin(), get_current_screen(), get_post(), get_post_type_archive_link(), get_option(), is_wp_error(), get_userdata(), get_author_posts_url(), ->exists(), __(), view()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($tag) && is_object($tag) && is_wp_error() && isset($user_id) && ->exists()92–100is_admin(), get_current_screen(), get_post(), current_user_can(), get_post_type_archive_link(), is_wp_error(), get_userdata(), get_author_posts_url(), ->exists(), __(), view()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($user_id) && ->exists()92–104is_admin(), get_current_screen(), get_post(), current_user_can(), get_post_type_archive_link(), get_option(), get_userdata(), get_author_posts_url(), ->exists(), __(), view()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($tag) && is_object($tag) && !is_wp_error() && is_term_publicly_viewable()93–101is_admin(), get_current_screen(), get_post(), current_user_can(), get_post_type_archive_link(), get_option(), is_wp_error(), get_taxonomy(), is_term_publicly_viewable(), get_term_link(), view()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($tag) && is_object($tag) && is_wp_error() && isset($user_id)96–101is_admin(), get_current_screen(), get_post(), get_post(), current_user_can(), get_post_type_archive_link(), get_option(), is_wp_error(), get_userdata(), get_author_posts_url(), ->exists()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($tag) && is_object($tag) && is_wp_error() && isset($user_id) && ->exists()98–101is_admin(), get_current_screen(), get_post(), get_post(), get_post_type_archive_link(), get_option(), is_wp_error(), get_userdata(), get_author_posts_url(), ->exists(), __(), view()
is_admin() && $post_type_object && !get_post_type_archive_link() && isset($tag) && is_object($tag) && is_wp_error() && isset($user_id) && ->exists()98–102is_admin(), get_current_screen(), get_post(), get_post(), current_user_can(), get_post_type_archive_link(), is_wp_error(), get_userdata(), get_author_posts_url(), ->exists(), __(), view()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($user_id) && ->exists()98–106is_admin(), get_current_screen(), get_post(), get_post(), current_user_can(), get_post_type_archive_link(), get_option(), get_userdata(), get_author_posts_url(), ->exists(), __(), view()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($tag) && is_object($tag) && !is_wp_error() && is_term_publicly_viewable()99–103is_admin(), get_current_screen(), get_post(), get_post(), current_user_can(), get_post_type_archive_link(), get_option(), is_wp_error(), get_taxonomy(), is_term_publicly_viewable(), get_term_link(), view()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($tag) && is_object($tag) && is_wp_error() && isset($user_id) && ->exists()100–108is_admin(), get_current_screen(), get_post(), current_user_can(), get_post_type_archive_link(), get_option(), is_wp_error(), get_userdata(), get_author_posts_url(), ->exists(), __(), view()
is_admin() && $post_type_object && get_post_type_archive_link() && isset($tag) && is_object($tag) && is_wp_error() && isset($user_id) && ->exists()106–110is_admin(), get_current_screen(), get_post(), get_post(), current_user_can(), get_post_type_archive_link(), get_option(), is_wp_error(), get_userdata(), get_author_posts_url(), ->exists(), __(), view()

This body has more branch combinations than are worth enumerating, so the table covers the outcomes found first rather than every one that exists.

Across PHP versions

Compiles the same on PHP 7.4, 8.1, 8.2, 8.3, 8.4, 8.5 and 8.6-dev: 307 instructions, 14–110 executed per call, 43 branches. The work does not change between versions.

An instruction is not a fixed amount of time, so a matching count is not necessarily the same speed; what it rules out is a difference in the work itself.

Uses · 20

Show all 20

Source code

function wp_admin_bar_edit_menu( $wp_admin_bar ) {	global $tag, $wp_the_query, $user_id, $post_id; 	if ( is_admin() ) {		$current_screen   = get_current_screen();		$post             = get_post();		$post_type_object = null; 		if ( 'post' === $current_screen->base ) {			$post_type_object = get_post_type_object( $post->post_type );		} elseif ( 'edit' === $current_screen->base ) {			$post_type_object = get_post_type_object( $current_screen->post_type );		} elseif ( 'edit-comments' === $current_screen->base && $post_id ) {			$post = get_post( $post_id );			if ( $post ) {				$post_type_object = get_post_type_object( $post->post_type );			}		} 		if ( ( 'post' === $current_screen->base || 'edit-comments' === $current_screen->base )			&& 'add' !== $current_screen->action			&& ( $post_type_object )			&& current_user_can( 'read_post', $post->ID )			&& ( $post_type_object->public )			&& ( $post_type_object->show_in_admin_bar ) ) {			if ( 'draft' === $post->post_status ) {				$preview_link = get_preview_post_link( $post );				$wp_admin_bar->add_node(					array(						'id'    => 'preview',						'title' => $post_type_object->labels->view_item,						'href'  => esc_url( $preview_link ),						'meta'  => array( 'target' => 'wp-preview-' . $post->ID ),					)				);			} else {				$wp_admin_bar->add_node(					array(						'id'    => 'view',						'title' => $post_type_object->labels->view_item,						'href'  => get_permalink( $post->ID ),					)				);			}		} elseif ( 'edit' === $current_screen->base			&& ( $post_type_object )			&& ( $post_type_object->public )			&& ( $post_type_object->show_in_admin_bar )			&& ( get_post_type_archive_link( $post_type_object->name ) )			&& ! ( 'post' === $post_type_object->name && 'posts' === get_option( 'show_on_front' ) ) ) {			$wp_admin_bar->add_node(				array(					'id'    => 'archive',					'title' => $post_type_object->labels->view_items,					'href'  => get_post_type_archive_link( $current_screen->post_type ),				)			);		} elseif ( 'term' === $current_screen->base && isset( $tag ) && is_object( $tag ) && ! is_wp_error( $tag ) ) {			$tax = get_taxonomy( $tag->taxonomy );			if ( is_term_publicly_viewable( $tag ) ) {				$wp_admin_bar->add_node(					array(						'id'    => 'view',						'title' => $tax->labels->view_item,						'href'  => get_term_link( $tag ),					)				);			}		} elseif ( 'user-edit' === $current_screen->base && isset( $user_id ) ) {			$user_object = get_userdata( $user_id );			$view_link   = get_author_posts_url( $user_object->ID );			if ( $user_object->exists() && $view_link ) {				$wp_admin_bar->add_node(					array(						'id'    => 'view',						'title' => __( 'View User' ),						'href'  => $view_link,					)				);			}

Changelog

Introduced in 3.1.0. Unchanged from 6.7.7 through 7.1.0.

  1. 6.7.7
  2. 6.8.8
  3. 6.9.7
  4. 7.0.4
  5. 7.1.0

Signature, return type and hooks compared across 5 parsed releases.

5.5.0
Added a "View Post" link on Comments screen for a single post.from the docblock
3.1.0
Introduced.from the docblock

About this page

Parsed data
Generated from the wordpress-develop 6.8.8 tag, from src/wp-includes/admin-bar.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.