Or, embed this snippet using GenerateWP WordPress Plugin.

Download

Clone

test

// WP_Query arguments
$args = array(
	'post_type'              => array( 'post', 'animal' ),
	'post_status'            => array( 'publish' ),
	'tax_query'              => array(
		'relation' => 'AND',
		array(
			'taxonomy'         => 'animal',
			'terms'            => 'panda',
			'field'            => 'slug',
		),
		array(
			'relation' => 'OR',
			array(
				'taxonomy'         => 'food',
				'terms'            => 'sasa',
				'field'            => 'slug',
			),
			array(
				'taxonomy'         => 'zoo',
				'terms'            => 'ueno',
				'field'            => 'slug',
			),
		),
	),
	'date_query'             => array(
		'relation' => 'OR',
		array(
			'before' => array(
				'year'  => 2020,
				'month' => 10,
				'day'   => 1,
			),
			'after' => array(
				'year'  => 2021,
				'month' => 9,
				'day'   => 30,
			),
			'inclusive' => true,
		),
		array(
			'before' => array(
				'year'  => 2022,
				'month' => 1,
				'day'   => 1,
			),
			'after' => array(
				'year'  => 2022,
				'month' => 5,
				'day'   => 25,
			),
			'inclusive' => true,
		),
	),
	'meta_query'             => array(
		'relation' => 'AND',
		array(
			'key'     => 'price',
			'value'   => '100',
			'compare' => '>=',
			'type'    => 'NUMERIC',
		),
		array(
			'key'     => 'price',
			'value'   => '500',
			'compare' => '<',
			'type'    => 'NUMERIC',
		),
	),
);

// The Query
$query = new WP_Query( $args );

// The Loop
if ( $query->have_posts() ) {
	while ( $query->have_posts() ) {
		$query->the_post();
		// do something
	}
} else {
	// no posts found
}

// Restore original Post Data
wp_reset_postdata();