Query multiple documents inside home page

Hey @jprzpam,

Welcome to the Prismic community, and thanks for posting this question! I'm going to try to answer one thing at a time.

Content Modeling

If you basically want to create a "tag" or category" field, you can see some information on how to do that with Content Relationships, here:

The main benefit of doing it with a Content Relationship is that you can have a document for each level and grade, so you can add content and metadata, like a title, description, image, etc. However, I don't see any problem with doing that with a multi-select.

Fetching

To fetch the homepage Slices plus all of the Course documents, you might use a GraphQuery like this:

query{
  allHomepages {
    pageInfo {
      startCursor
      endCursor
    } 
    edges {
      node {
        body {
          ... on HomepageBanner {
            primary {
              image
              text
            }
          }
          ... on HomepageEmbed {
            primary {
              embed
            }
          }
        }
      }
    }
  }
  allArticles {
    edges {
      node {
        title
        meta_description
      }
    }
  }
}

You can also do this with the Rest API. Here's some info on how to perform multiple queries with useGetStaticProps:

Courses Slice

Your solution for the Courses Slice actually sounds okay to me! But let me know if it's creating any problems.

Let me know if this helps, or if I missed any of your questions.

Sam