Quiero averiguar la última versión de WordPress que se lanzó oficialmente. Si es posible, me gustaría obtener ese idioma de versión específico para al menos inglés y alemán.
Podría intentar analizar el sitio web https://wordpress.org/download/ pero no tiene el número de versión en un lugar específico. También sé que podría descargar el paquete más reciente ( https://wordpress.org/latest.zip ), pero no necesito el paquete completo, solo el número de versión.
¿Existe una forma confiable y estable de obtener el último número de versión estable de WordPress?
Esta pregunta no trata sobre obtener el número de versión de mi instalación de WordPress. En realidad, quiero comparar mi versión instalada con la última versión mediante un script.
Respuesta
WordPress.org ofrece una api que incluye un verificador de versión . Ese verificador de versión puede devolver una respuesta json (o una cadena serializada si eso es lo tuyo).
Ejemplo de uso
$url = "https://api.wordpress.org/core/version-check/1.7/"; $response = wp_remote_get($url); $json = $response["body"]; $obj = json_decode($json);
El $obj
resultante contendrá una matriz de ofertas, cuyo primer elemento es un objeto que contiene la información que desea .
$upgrade
también contendrá mucha otra información útil, incluida la configuración regional, dónde descargar la versión actual, etc.
Si va a ejecutar esto en un complemento, recomendaría almacenarlo en caché con un transitorio que caduca cada 12 horas o algo así y no enviar spam a la API deficiente en cada carga de página.
Editar : Error de ortografía del nombre de la variable.
Comentarios
Respuesta
Para bash
usuarios una liner: ( Instale jq si no está allí)
curl -s "https://api.wordpress.org/core/version-check/1.7/" | jq -r "[.offers[]|select(.response=="upgrade")][0].version"
Comentarios
- Bienvenido a Desarrollo de WordPress . Espero que encuentre la (s) respuesta (s) que está buscando. Nuestro sitio es diferente a la mayoría. Si aún no lo ha hecho, considere consultar el recorrido y la ayuda center para descubrir cómo funcionan las cosas.
rawjson = urllib2.urlopen("https://api.wordpress.org/core/version-check/1.7/").read() version = json.loads(rawjson) print(version["offers"][0]["version"])