¿Es posible determinar cuándo el usuario está en "Medios > Añadir nuevo" vs "Entrada > Añadir imagen"?
Quiero envolver el filtro a continuación en un condicional que verifique si el usuario está subiendo una imagen desde el Administrador de Medios (Admin > Medios > Añadir nuevo) y no desde la rutina de subida de imágenes del editor de entradas.
¿Es posible distinguirlo? $pagenow en ambos casos parece ser el mismo...
//no crear miniaturas adicionales
global $pagenow;
if($pagenow=="media-new.php"){
add_filter('intermediate_image_sizes_advanced','ce4_no_thumbs');
}
function ce4_no_thumbs($sizes){return array();}
Actualización: Parece que hay un post_id en la cadena de consulta cuando se accede a la subida desde una entrada y no cuando se accede mediante "administrador de medios > añadir nuevo", sin embargo, la siguiente prueba pasa en ambos casos...
if ( is_admin() && !isset($_GET['post_id']) ) {
/*Esto no debería ejecutarse si el usuario está subiendo una imagen a una entrada,
ya que post_id está en la cadena de consulta. Sin embargo, en mi prueba
aún se ejecuta.*/
add_filter('intermediate_image_sizes_advanced','ce4_no_thumbs');
}

Respondí esto para ti en los comentarios de tu pregunta anterior.
...puedes usar el filtro que @Backie sugirió arriba (
intermediate_image_sizes_advanced
), y en la función enganchada verificar un campo en la colección de posts llamado _wp_http_referer. Te dice de dónde vino la solicitud de carga.Si _wp_http_referer contiene "media-new.php", puedes devolver un array vacío (lo que detendrá temporalmente la generación de miniaturas, pero no cambiará ninguna configuración de miniaturas). De lo contrario, devuelve el array $sizes sin modificar.
Prueba:
function wpsx_7756_no_thumbnails($arr_sizes){
if(stristr($_POST['_wp_http_referer'], 'media-new.php')) {
return array();
}
return $arr_sizes;
}
add_filter('intermediate_image_sizes_advanced','wpsx_7756_no_thumbnails');
Déjame saber si esto funciona.
Ten en cuenta que agregar el filtro mientras estás en el formulario de carga no hará lo que quieres--el formulario se envía a una página separada que maneja la carga, y no respetará tu filtro.

@MathSmath: Lo he añadido a functions.php y lo he probado. Desafortunadamente, todas las miniaturas siguen creándose cuando se usa "Medios > Añadir nuevo". ¿Alguna idea para hacer pruebas de seguimiento? echo "el post referrer: ".$_POST['_wp_http_referer']; (devuelve un entero incrementado en +1 cada vez que ocurre una subida)

Quizás otra opción sería comprobar el iframe? Aparece en el post uploader, pero aparentemente no en el gestor de medios > uploader de añadir nuevo.

@Scott B ¡Maldita sea! Estaba seguro de que eso funcionaría :) No estoy seguro sobre lo del iframe. Para hacer seguimiento, probaría añadiendo un wp_die(json_encode($_POST)) al principio de tu función "no thumbnails". Volcará el contenido de la colección post en el momento en que se ejecuta el filtro. Es posible que para cuando Wordpress llegue a crear las miniaturas, la colección post original esté fuera de alcance? En cualquier caso, podrías ver algo en la colección post disponible que PUEDAS usar para identificar el referrer.

@MAthSmath: ¡Entendido! if(!stristr($_POST['type'], 'image')) {return array();}return $arr_sizes;}
