Exibindo o número de atualizações disponíveis na área Admin

9

Estou tendo um problema ao descobrir como exibir o número de plugins / atualizações disponíveis para chamar em outro lugar que não seja o cabeçalho do administrador. Eu encontrei a função wp_get_update_datadeve ser o que eu preciso:

Como a função "wp_get_update_data" é usada?

No entanto, eu não tinha certeza de como fazer isso ser exibido como uma contagem real do total de plug-ins e atualizações disponíveis ou de qualquer exemplo de trabalho na Internet sobre como usá-lo.

Qualquer sugestão será muito bem-vinda.

Tom
fonte

Respostas:

9

Aqui está um exemplo dos dados retornados da wp_get_update_data()função:

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

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

Portanto, o número de atualizações de plug-in disponíveis deve estar disponível com:

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

Atualizar:

Para exibir as seguintes informações do plug-in na área de administração:

Existem atualizações disponíveis para 3 plugins de 22

Além disso, podemos usar a get_plugins()função:

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']
);

Podemos adicionar mais informações, de maneira semelhante, com get_mu_plugins()e get_dropins().

Birgire
fonte
1
Desculpe, mas tive que cancelar sua resposta. Ele adiciona informações ligeiramente diferentes e claramente tem seu valor. Espero que você entenda isso.
kaiser
@kaiser, se você diz ;-) Atualizei a resposta para torná-la um pouco diferente da outra.
precisa saber é
1
Funcionou perfeitamente, obrigado por dedicar um tempo para explicar com mais detalhes!
Tom
6

wp_get_update_data () retorna uma matriz neste formato

  • conta
    • plugins
    • temas
    • wordpress
    • traduções
    • total
  • título

Então, se você quiser a contagem total, precisará usá-la assim

$updates = wp_get_update_data();
echo $updates['counts']['total'];
sakibmoon
fonte
1
Você só chegou antes de mim por alguns segundos, por isso vou retirar a minha resposta (+1)
birgire
@birgire Grande esportividade. 1
Pieter Goosen