Mostrar la cantidad de actualizaciones disponibles en el área de administración

9

Tengo un problema para descubrir cómo mostrar la cantidad de complementos / actualizaciones disponibles para llamar a otro lugar que no sea el encabezado de administrador. Encontré que la función wp_get_update_datadebería ser lo que necesito:

¿Cómo se usa la función "wp_get_update_data"?

Sin embargo, no estaba seguro de cómo hacer que esto se muestre como un recuento real del total de complementos y actualizaciones disponibles o cualquier ejemplo funcional en Internet de cómo usarlo.

Cualquier sugerencia sería muy apreciada.

Tom
fuente

Respuestas:

9

Aquí hay un ejemplo de los datos devueltos por la wp_get_update_data()función:

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

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

Por lo tanto, la cantidad de actualizaciones de complementos disponibles debería estar disponible con:

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

Actualizar:

Para mostrar la siguiente información del complemento en el área de administración:

Hay actualizaciones disponibles para 3 complementos de 22

También podemos utilizar la get_plugins()función:

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 agregar más información, de manera similar, con get_mu_plugins()y get_dropins().

Birgire
fuente
1
Lo siento, pero tuve que recuperar tu respuesta. Agrega información ligeramente diferente y claramente tiene su valor. Espero que entiendas eso.
Kaiser
@kaiser si tú lo dices ;-) Actualicé la respuesta para que sea un poco diferente de la otra.
Birgire
1
Funcionó perfectamente, ¡gracias por tomarse el tiempo para explicar con más detalle!
Tom
6

wp_get_update_data () devuelve una matriz en este formato

  • cuenta
    • complementos
    • temas
    • wordpress
    • traducciones
    • total
  • título

Entonces, si quieres un recuento total, debes usarlo así

$updates = wp_get_update_data();
echo $updates['counts']['total'];
sakibmoon
fuente
1
Simplemente me
ganaste
@birgire Gran deportividad. +1
Pieter Goosen