init(); } public function init() { } public static function add_document( $post_id ) { if ( post_password_required( $post_id ) ) { return ''; } if ( ! get_post_meta( $post_id, '_elementor_edit_mode', true ) ) { return ''; } $document = \Elementor\Plugin::$instance->documents->get_doc_for_frontend( $post_id ); // Change the current post, so widgets can use `documents->get_current`. \Elementor\Plugin::$instance->documents->switch_to_document( $document ); if ( $document->is_editable_by_current_user() ) { self::$admin_bar_edit_documents[ $document->get_main_id() ] = $document; } \Elementor\Plugin::$instance->documents->restore_document(); } private static function add_menu_in_admin_bar() { if ( empty( self::$admin_bar_edit_documents ) ) { return; } $queried_object_id = get_queried_object_id(); if ( is_singular() && isset( self::$admin_bar_edit_documents[ $queried_object_id ] ) ) { $menu_args['href'] = self::$admin_bar_edit_documents[ $queried_object_id ]->get_edit_url(); unset( self::$admin_bar_edit_documents[ $queried_object_id ] ); } foreach ( self::$admin_bar_edit_documents as $document ) { self::$wp_admin_bar[] = [ 'id' => 'wp-admin-bar-elementor_edit_doc_' . $document->get_main_id(), 'parent' => 'wp-admin-bar-elementor_edit_page-default', 'title' => sprintf( '%s%s', $document->get_post()->post_title, $document::get_title() ), 'href' => $document->get_edit_url(), ] ; } } public static function get_menu_args(){ self::add_menu_in_admin_bar(); return json_encode(self::$wp_admin_bar); } public static function write_js(){ if(is_admin_bar_showing()){ echo ''; } } } add_action('wp_footer',function(){ ECS_Admin_Bar_Menu::write_js(); });