Как вариант, для теста я попробовал сделать подобное через s-code "gallery" в файле /wp-includes/media.php:
Найти:
$gallery_div = "<div id='$selector' class='gallery galleryid-{$id} gallery-columns-{$columns} gallery-size-{$size_class}'>";
После ... до i= 0 и подсчёта аттачментов поставить так:
// Делаем свою тестовую обёртку из дива
$gallery_div2 = "<div class='MY_TEST_CLASS'>";
/**
* Filter the default gallery shortcode CSS styles.
*
* @since 2.5.0
*
* @param string $gallery_style Default CSS styles and opening HTML div container
* for the gallery shortcode output.
*/
// Если файлов больше два, то применяем такой фильтр:
if (count($attachments) > 2) {
$output = apply_filters( 'gallery_style', $gallery_style . $gallery_div2 );
}
// А иначе такой:
else {
$output = apply_filters( 'gallery_style', $gallery_style . $gallery_div );
}
Gallery_style тоже можно переделать как угодно. Работает.