Va'... ce l'ho fatta.

codice:
function my_flickr( $atts ) {
	extract( shortcode_atts( array(
	  'set' => ''), $atts ) );
	  
		require_once("phpFlickr/phpFlickr.php");
		$f = new phpFlickr("API_KEY"); // API
		$user = "USER_ID";
		$ph_sets = $f->photosets_getList($user);
		$photos = $f->photosets_getPhotos($set);
		foreach ($photos['photoset']['photo'] as $photo):
		echo "<div class=\"photos\">[img] . $f->buildPhotoURL($photo, 'large') . [/img]</div>";
		endforeach;
}

add_shortcode( 'flickr', 'my_flickr' );
Evidentemente definire $f fuori dalla funzione non funzionava (nell'esempio funzionante era definito addirittura nell'<head> del sito, ma se si tratta di una funzione invece...