Eu reformulei isso para fazer mais sentido.
Ok, eu tenho um plug-in que usa um serviço remoto que verifica se há atualizações, assim como os plug-ins padrão do WordPress, neste caso, apenas verifica um arquivo XML.
Quero mostrar um balão de menu como este quando uma atualização estiver disponível.
Pode mostrar apenas um "1" ou texto como "alerta", não importa.
Como meu plug-in usa uma página de opções (usando add_options_page
), as configurações do plug-in aparecem no submenu padrão "Configurações".
Acho que preciso adicionar o seguinte CSS para que a bolha apareça,
<span class='update-plugins count-1' title='title'><span class='update-count'>1</span></span>
e amarrar no global $submenu
. O problema é que não posso usar um valor de matriz codificado para o menu, pois cada site terá valores diferentes.
Então eu não posso usar $submenu[80][10] .= <span class='update-plugins count-1' title='title'><span class='update-count'>1</span></span>
Como posso encontrar o valor do submenu de meus plugins, preciso percorrer a matriz e corresponder aos valores da string?
Além disso, mesmo quando codifiquei os valores, não consegui que a bolha aparecesse.
//adding plugin to menu
add_action('admin_menu', 'sec_plugin_checker');
function sec_plugin_checker() {
add_options_page(' Plugin Checker', 'Plugin Check', 'activate_plugins',
'sec_plugin_check', 'sec_checker');
// the conditional where I want the bubble to appear
if (!empty($matches)){
echo "Match found !<br />";
global $submenu;
foreach( $submenu as $item ) {
$item[41][20] = sprintf( __( 'Updates %s', 'sec_plugin_checker' ),
"<span class='update-plugins count-1' title='title'>
<span class='update-count'>1</span></span>");
}
}
e aqui está o que var_dump($submenu);
parece,
["options-general.php"]=>
array(9){
...
[41]=>
array(4) {
[0]=>
string(20) "Plugin Check"
[1]=>
string(16) "activate_plugins"
[2]=>
string(21) "sec_plugin_check"
[3]=>
string(23) " Plugin Checker"
...
}