Lista de todos los plugins existentes de WordPress

15 abr 2013, 04:35:08
Vistas: 9.26K
Votos: 6

¿Existe algún lugar desde donde pueda obtener una lista de todos los plugins existentes de WordPress, ubicados en http://wordpress.org/extend/plugins/?

Estoy intentando probar mi sitio web en busca de vulnerabilidades y necesito dicha lista. Gracias.

2
Comentarios

Para cualquiera (como yo) que solo esté buscando el número simple, la lista contiene 68616 elementos.

Simon vom Eyser Simon vom Eyser
11 jul 2017 13:19:02

Hola Simon, muchas gracias por tu ayuda. ¿Cómo encontraste este número? Espero saber de ti.

zero zero
27 jun 2020 10:46:00
Todas las respuestas a la pregunta 3
2
11

http://plugins.svn.wordpress.org/

Buena suerte. Es una lista muy larga y Otto normalmente se enfada mucho si alguien intenta hacer scraping de todo el repositorio SVN.

15 abr 2013 04:49:24
Comentarios

¿Qué? ¿Cómo está Otto?

Cyclonecode Cyclonecode
13 abr 2018 23:44:58

Hmm - ¿quién es Otto?

zero zero
27 jun 2020 10:46:37
1

SVN

Puedes encontrar una lista de todos los plugins dentro del SVN - https://plugins.svn.wordpress.org/

Git

Otra opción es el espejo en GitHub, que tiene una API más útil para trabajar con la lista. - https://github.com/wp-plugins

API

También puedes usar la API y sus funciones para obtener una solución más utilizable para analizar cambios, etc., consulta https://developer.wordpress.org/reference/functions/plugins_api/

Adicional

Un servicio adicional es https://wpdirectory.net/ que también te ofrece muchas funciones útiles. WP Dir es un servicio web que permite búsquedas con expresiones regulares extremadamente rápidas en los Directorios de Plugins/Temas de WordPress. Especialmente las expresiones regulares son realmente útiles.

15 ene 2020 10:21:01
Comentarios

gracias por los consejos. Gracias especialmente por el enlace al directorio de wp.

zero zero
27 jun 2020 10:48:13
0

No es la mejor respuesta pero intenté resolver mi propio problema de la mejor manera posible.

Obtener una lista de plugins

Esto no devolverá TODOS los plugins pero sí devolverá los mejor valorados:

$plugins = plugins_api('query_plugins', array(
    'per_page' => 100,
    'browse' => 'top-rated',
    'fields' =>
        array(
            'short_description' => false,
            'description' => false,
            'sections' => false,
            'tested' => false,
            'requires' => false,
            'rating' => false,
            'ratings' => false,
            'downloaded' => false,
            'downloadlink' => false,
            'last_updated' => false,
            'added' => false,
            'tags' => false,
            'compatibility' => false,
            'homepage' => false,
            'versions' => false,
            'donate_link' => false,
            'reviews' => false,
            'banners' => false,
            'icons' => false,
            'active_installs' => false,
            'group' => false,
            'contributors' => false
        )));

Guardar los datos como JSON

Como los datos que obtenemos son enormes y sería malo para el rendimiento, intentamos extraer el name (nombre) y el slug del array y luego lo escribimos en un archivo JSON:

$plugins_json = '{' . PHP_EOL;
// Obtener solo el nombre y el slug
foreach ($plugins as $plugin) {
    foreach ($plugin as $key => $p) {
        if ($p->name != null) {
            // Formateemos el JSON para que se vea bonito
            $plugins_json .= '  "'. $p->name . '": {' . PHP_EOL;
            $plugins_json .= '      "slug": "' . $p->slug . '"' . PHP_EOL;
            end($plugin);
            $plugins_json .= ($key !== key($plugin)) ? '    },' . PHP_EOL : '   }' . PHP_EOL;
        }
    }
}
$plugins_json .= '}';
file_put_contents('plugins.json', $plugins_json);

Ahora tenemos un archivo JSON ligero con solo los datos que necesitamos.

Para mantener actualizado el archivo JSON, ejecutamos ese script para crear un archivo JSON cada 24 horas configurando un Cron Job.

16 jun 2020 00:34:27