web-dev-qa-db-fra.com

Affichage du nombre de mises à jour disponibles dans la zone Admin

J'ai un problème pour savoir comment afficher le nombre de plugins/mises à jour disponibles pour appeler ailleurs que dans l'en-tête de l'administrateur. J'ai trouvé la fonction wp_get_update_data devrait être ce dont j'ai besoin:

Comment la fonction "wp_get_update_data" est-elle utilisée?

Cependant, je ne savais pas vraiment comment faire en sorte que cela affiche le nombre total de plug-ins et de mises à jour disponibles, ni aucun exemple concret d'utilisation sur Internet.

Toute suggestion serait très appréciée.

8
Tom

Voici un exemple des données renvoyées par la fonction wp_get_update_data():

Array
(
    [counts] => Array
        (
            [plugins] => 3
            [themes] => 2
            [wordpress] => 0
            [translations] => 0
            [total] => 5
        )

    [title] => 3 Plugin Updates, 2 Theme Updates
)

Donc, le nombre de mises à jour de plugins disponibles devrait être disponible avec:

// Number of available plugin updates:
$update_data = wp_get_update_data();
echo $update_data['counts']['plugins'];

Mise à jour:

Pour afficher les informations de plug-in suivantes dans la zone d'administration:

Il existe des mises à jour disponibles pour 3 plugins sur 22

nous pouvons également utiliser la fonction get_plugins() :

if ( ! function_exists( 'get_plugins' ) )
{
    require_once ABSPATH . 'wp-admin/includes/plugin.php';
}

$data = array( 
    'updates'   =>  $update_data['counts']['plugins'],
    'total'     =>  count( get_plugins() ),
);

printf( 
    "There are available updates for <strong>%d</strong> plugins  
     out of <strong>%d</strong>",
    $data['updates'],
    $data['total']
);

Nous pouvons ajouter plus d’informations de la même manière avec get_mu_plugins() et get_dropins().

8
birgire

wp_get_update_data () retourne un tableau dans ce format

  • compte
    • plugins
    • des thèmes
    • wordpress
    • traductions
    • total
  • titre

Donc, si vous voulez le nombre total, vous devez l'utiliser comme ceci

$updates = wp_get_update_data();
echo $updates['counts']['total'];
6
sakibmoon