Saya telah mengatakan kembali ini agar lebih masuk akal.
Ok, saya punya plugin yang menggunakan layanan jarak jauh yang memeriksa pembaruan, sama seperti plugin WordPress default, dalam hal ini hanya memeriksa file XML.
Saya ingin menampilkan gelembung menu seperti ini ketika pembaruan tersedia.
Itu dapat menunjukkan hanya "1" atau teks seperti "lansiran", itu tidak masalah.
Karena plugin saya menggunakan halaman opsi (menggunakan add_options_page
) pengaturan plugin muncul di bawah submenu "Pengaturan" default.
Saya pikir saya perlu menambahkan CSS berikut untuk mendapatkan gelembung muncul,
<span class='update-plugins count-1' title='title'><span class='update-count'>1</span></span>
dan mengikat ke global $submenu
. Masalahnya adalah saya tidak dapat menggunakan nilai array kode-keras untuk menu karena setiap situs akan memiliki nilai yang berbeda.
Jadi saya tidak bisa menggunakan $submenu[80][10] .= <span class='update-plugins count-1' title='title'><span class='update-count'>1</span></span>
Bagaimana saya bisa menemukan nilai submenu plugin saya, apakah saya harus mengulang array dan mencocokkan nilai string?
Bahkan ketika saya membuat hard-coded nilai-nilai saya tidak bisa membuat gelembung muncul.
//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>");
}
}
dan inilah yang var_dump($submenu);
terlihat seperti,
["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"
...
}