When you need to retrieve and present a lot of information there is bound to be complexity. Mostly it is finding right balance between complex querying and complex sorting in PHP (which is often overlooked option).
Your logic looks mostly fine, what could use tweaking as for me:
-
Genre
seems more like a taxonomy than custom field; -
you are essentially building post relationships here and might be better of just using one of relationships plugins, rather than trying to handle it with custom fields. It seems easy enough now, but add more CPTs into the mix and it might fall apart.
Related Posts:
- Get date of last update outside of loop
- How do I get the attributes of a short code from a post?
- WordPress category & taxonomy loop with pagination
- Changing behavior of the loop twice in one page
- Show scheduled posts in archive page
- post__in – Placing content from a foreach loop inside of an array
- include(locate_template) messing up the loop
- get_the_content not working in loop?
- Get link of inserted media file of post within loop
- If No Search Results, Show Posts from Alternate Search Query
- Loop – how to get previous/next post for first/last post?
- Output shows a page instead of a list of blog postings
- How to add “time” data this?
- multiple loops with pagination on the same page
- Loop through all media library images and return those where caption contains the text carousel
- Custom search form to display users only
- Multiple loops on the same page removing post tags
- Pages inside a page (with thumbnails)
- How to make post content from each post display within the same div
- Displaying the last page of posts
- How to order posts by meta_value created inside loop?
- How to get_posts where ‘menu_order’ is more than 0/zero?
- WordPress Redirects on Install
- How to load all pages into one page with their templates
- How to return only one instance of each, from the entire loop
- Problems with loop
- Repeating Loop on my Posts Page
- Combining action and filter?
- Shortcode with a foreach and arguments
- Calling & display certain product category loop and pagination on the homepage
- Detect if current page is front page within custom query
- Display Authors in a grid loop
- Infinite Scroll and DFP
- Blog’s post count cause irratic behavior
- Sanitize Custom Field Value in Meta Query
- Default ‘post’ post type archive slug?
- show random image in loop if image is not set
- Get Page content to displayin Bootstrap Modal
- Pagination – works on local but not live dev!
- need help looping add_action in wp
- Does WordPress Loop have a function like Shopify’s cycle?
- Combine the results of two loops [closed]
- How to show more random posts if Tag has less than 3 posts
- How to display pending posts on the homepage only for editors
- How can I improve the performance of this query_posts loop?
- Add leading zero to current post display [closed]
- WordPress Image Slider Looping Title Not Working
- Output meta into arrays
- Is there any good reason for two CSS files to @import each other?
- Adding div after every two post on main loop! Why will first post not get counted?
- Moving wordpress to different url/server creates redirect loop
- Second Loop Showing Only One Post on Single Post Page
- Pulling in featured image into default recent posts widget
- Random post link generator messes up the loop
- Modify loop output for a specific list of categories
- Change position of entry title
- Print the whole page?
- excerpt not showing up
- Pagination for two loops
- Override orderby to create list of users by custom meta_value
- Loop info in jquery Tabs – loop into a variable?
- Thumbnail Image Rounded Corners w CSS (or any other good method)
- Several loops in sidebar issues
- Adding $args to wp_schedule_event() causes hook to add infinitely to WP Cron
- $post is undefined in wordpress loop [ajax]
- Insert content above an embedded video inside Wordress’ php the_content
- Loop only shows first two posts
- Why is my archive page looping through all but one post?
- Loop two different category WP_Query
- Use ACF Category Image for all Taxonomy Archive Views
- Loop with custom posts, to include information from different custom post type
- the loop printing post in one grid
- Check value of post meta within IF statement
- My WordPress installation doesn’t load correct template
- Work arounds for conditional checks inside the loop in search.php?
- Transient not working for external data
- adding tax_query to $query_string
- Get Sticky User in user loop based on user role
- Popular posts with Varnish ESI
- Querying posts from only one category and exluding the latest post
- Remove posts_orderby filter then add it back in
- the_title() Returns the page title instead of the post
- WP update_post_meta link loop
- How do I aproach this?(for sale, for lease, sold->move something from a category to another)
- How to fix pagination for custom loops?
- query_posts ignores the argument
- Need some help with “the_widget()” function
- Conditional Check in The Loop’s Parameters
- How does the JSON API work to parse incoming JSON and fetch a post based on an ID?
- show posts from one category with comments only
- Exclude Authors based off date of last post
- Loop from another WP site onto mine
- Having issue with WordPress loop
- How to implement template file and the loop
- I need to update the post query? [closed]
- Wrap every 2 divs in row – for each loop [closed]
- How to add class to the last image of the last post in a loop
- Multiple loop with pagination in same page
- Why did my most recent article fall behind an older one on my site?
- Hook in the loop after the first post