add_node(
array(
'id' => 'resgata-panel',
'title' => '' . esc_html__( 'Painel Resgata', 'resgata-pet' ) . '',
'href' => esc_url( Router::url() ),
'meta' => array( 'title' => __( 'Abrir o painel da protetora', 'resgata-pet' ) ),
)
);
}
/**
* Botão "Painel Resgata" no topo do menu lateral do wp-admin.
*/
public function admin_menu_link(): void {
global $menu;
if ( ! current_user_can( Capabilities::PANEL ) ) {
return;
}
// phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited -- Forma suportada de adicionar um link externo ao menu, no topo.
$menu['1.5'] = array(
__( 'Painel Resgata', 'resgata-pet' ),
Capabilities::PANEL,
esc_url( Router::url() ),
'',
'menu-top',
'menu-resgata-panel',
'dashicons-pets',
);
}
/**
* Destaca o botão da barra do topo com o verde da identidade (o do menu
* lateral segue o padrão do WordPress).
*
* Vai junto do CSS da barra do WordPress, que existe no wp-admin e no site.
*/
public function shortcut_styles(): void {
if ( ! is_admin_bar_showing() || ! current_user_can( Capabilities::PANEL ) ) {
return;
}
wp_add_inline_style(
'admin-bar',
'#wpadminbar #wp-admin-bar-resgata-panel > .ab-item{background:#2f7d55;color:#fff}'
. '#wpadminbar #wp-admin-bar-resgata-panel > .ab-item:hover,#wpadminbar #wp-admin-bar-resgata-panel > .ab-item:focus{background:#256645;color:#fff}'
. '#wpadminbar #wp-admin-bar-resgata-panel .ab-icon:before{color:#fff}'
. '#wpadminbar #wp-admin-bar-resgata-panel .ab-icon{margin-right:6px}'
. '@media screen and (max-width:782px){#wpadminbar li#wp-admin-bar-resgata-panel{display:block}#wpadminbar #wp-admin-bar-resgata-panel .ab-label{display:none}#wpadminbar #wp-admin-bar-resgata-panel .ab-icon{margin-right:0}}'
);
}
}