';
foreach ( $row_images as $image ) {
$grid_content .= sprintf(
'',
$image_width,
$email_cell_padding
);
// Build individual image content
$grid_content .= sprintf(
' ',
esc_url( $image['url'] ),
esc_attr( $image['alt'] ),
$image_width - $email_common_margin // Account for padding
);
// Add caption if available
if ( ! empty( $image['caption'] ) ) {
$grid_content .= sprintf(
'%s ',
esc_html( wp_strip_all_tags( $image['caption'] ) )
);
}
$grid_content .= ' | ';
}
// Fill remaining cells if odd number of images in last row
$remaining_cells = $images_per_row - count( $row_images );
for ( $i = 0; $i < $remaining_cells; $i++ ) {
$grid_content .= sprintf( ' | ', $image_width, $email_cell_padding );
}
$grid_content .= '