¿Cómo puede un Widget comportarse de manera diferente según la barra lateral?
Si está ubicado en sidebar-1, necesito que mi widget se comporte de manera diferente que si estuviera en sidebar-2. ¿Cómo puedo detectar la barra lateral en la que se encuentra desde la función widget()?
El widget contiene una lista de enlaces a publicaciones. Dependiendo de en qué barra lateral esté, debería usar una versión diferente del tamaño personalizado de su miniatura.
Así que lo que cambiará es el nombre de referencia del tamaño de la miniatura. Por ejemplo, en una barra lateral se usará "xs-square-thumb"; en otra se usará "L-square-thumb".
Ej: get_the_post_thumbnail($post->ID,'xs-square-thumb');

Puedes verificar la variable 'id' que se pasa en la variable $args
en la función widget(), te dará el id del área widgetizada en la que se encuentra actualmente.
ej:
public function widget($args, $instance) {
if( $args['id'] == 'sidebar-1' ) {
//hacer cosas específicas para la barra lateral
} else {
//comportamiento por defecto
}
}

no existe una forma limpia de manejar esto, ya que no hay una condición para verificar qué barra lateral está en uso, solo si existe o no. sin embargo, podrías hacer lo siguiente:
crear dos versiones diferentes del widget (lo que lo haría "a prueba de futuro" en cuanto a qué nombres de widgets podrían existir).
agregar una casilla de verificación a las opciones del widget para elegir qué tamaño de imagen usar.
