¿Cómo identificar remotamente la versión de una instalación de WordPress?
¿Cómo la herramienta de DD32 determina la versión de WordPress de una instalación? No funciona correctamente para WP 3.1 pero no utiliza la etiqueta meta generator ni el readme.txt de WP. Entonces, ¿qué más podría ser?

Este es un fragmento de código que escribí hace un tiempo para detectar la versión de WordPress de las formas más obvias: http://ottodestruct.com/class-wp-detection.phps
Existen otros métodos, más sutiles y menos evidentes. Su método es la identificación de huellas digitales de archivos. Básicamente, comprobar si existen ciertos archivos o no.

Solo estoy asumiendo aquí, pero esto generalmente se hace mediante la detección de huellas digitales (fingerprinting) de archivos/directorios/códigos específicos de versiones y a veces incluso el tamaño.
Por ejemplo, puedes eliminar todas las etiquetas meta de versiones (¿no hay como 12 lugares?) y el archivo .txt para la versión 3.1, pero dado que la 3.1 es la única versión que incluye el siguiente archivo nuevo por defecto, es bastante fácil de detectar.
wp-includes/js/l10n.js
Dado que cada lanzamiento tiene muchas adiciones nuevas, si dedicas suficiente tiempo a escribir un bot inteligente, no es muy difícil encontrar datos específicos de cada versión. Ocultar toda esta información sería mucho trabajo para cada lanzamiento.

Lo siento, debería haber sido más claro. La etiqueta meta de versión se inserta en varios lugares, por ejemplo, puedes eliminarla del encabezado predeterminado de tu blog, pero aparece en otros lugares. Por eso usas un filtro global para "eliminarla" en lugar de simplemente comentar la salida del encabezado html. Sin embargo, ese número probablemente está exagerado. Por ejemplo, mira el script de Otto a continuación.

Sé que ya hay una respuesta aceptada, pero solo lo menciono. La forma en que lo hago es analizar la variable $wp_version del archivo 'wp-includes/version.php' en el directorio de tu blog:
function get_wp_version() {
$versionFile = ABS_PATH.'/wp-includes/version.php';
// ARCHIVO DE VERSIÓN NO ENCONTRADO //
if (($versionStr = @file_get_contents($versionFile))=='') return '';
$regex = "wp_version.*'(?<wpVersion>.*)'";
if (preg_match('/'.$regex.'/', $versionStr, $matches)) {
return $matches['wpVersion'];
}
return '';
}
