the_content() won’t load galleries on homepage

There are a few issues here, but I’m not sure that any one directly is your problem. First, you need to be more specific in your pre_get_posts callback conditional, to ensure you’re targeting only the main query. Second, you need to clarify the post type you’re intending to show.

Third – and the one that may be causing the most problems of all – it is rare to need to change the post-type to display on the blog posts index (i.e. is_home()), rather than on the site front page (i.e. is_front_page())

Query Conditional

add_action( 'pre_get_posts', 'setup_site_loop' );
function setup_site_loop( $query ) {
  if ( is_home() ) {
    $query->set('post_type', 'seccion'); 
    $query->set('orderby', 'menu_order title'); 
    $query->set('order', 'ASC'); 
  }
}

This line:

if ( is_home() ) {

Two things:

  1. Add a check for is_main_query(), since there will almost always be multiple queries on any given page
  2. When testing query conditionals, target $query directly

    if ( $query->is_main_query() && $query->is_home() ) {
    

Post Type

This line:

$query->set('post_type', 'seccion');

You’re setting the post-type to 'seccion', but according to your Question:

(I altered the query so it would display pages instead of posts)

Is 'seccion' a custom post type? Is it the intended post type to display, or do you really intend to display page post-type?

Home vs Front Page

I suspect that the real issue is that you’re targeting the wrong query conditional. If your front page is set to display the blog posts index, then your query conditional should be fine. But if your site front page is set to display a static page, and you’re intending to target that static site front page, your query conditional is wrong. You will need to target is_front_page() instead of is_home():

if ( $query->is_main_query() && $query->is_front_page() ) {

For more information regarding home vs front page, see here.