Searching custom fields in Wordpress with meta_query | Web design Franklin TN, SEO Franklin TN, SEM Franklin TN, Search engine optimization Franklin TN, Search engine marketing Franklin TN, Digital marketing Franklin TN, Graphic design Franklin TN, Brand consulting Franklin TN, Brand design Franklin TN, Internet marketing Franklin TN
Web Design/SEO/Full Support

Searching custom fields in WordPress with meta_query

There have been quite a few incredibly useful features that were introduced in WordPress version 3.0, which came out over a year ago. However, perhaps my favorite didn’t come till half a year later when version 3.1 was released.
Previously, searching posts, pages or custom post types using custom field required a more-than-reasonable amount of work by directly querying the database with lots of nested SQL, which was fairly cumbersome. Fortunately, a new parameter was introduced into the query string arsenal streamlining this process.
If you look in the WordPress Codex for WP_Query, you’ll see a new(ish) parameter called ‘meta_query’, which does exactly that–queries meta data for a post. It can search singular fields, as well as multiple fields, and handles all your typical SQL operators, e.g., =, !=, LIKE, BETWEEN, and IN. As a bonus, meta_query also plays nicely with the search parameter, ‘s’, and works with custom post types and custom taxonomies.
There are two ways it can be used.

For singular queries:

$query = new WP_Query( array ( 'meta_key' => 'meta_value' ) );

For multiple queries:

$query = new WP_Query( array(
	'post_type' =>; 'food',
	'meta_query' => array(
			'key' => 'color',
			'value' => 'brown',
			'compare' => 'NOT LIKE'
			'key' => 'taste',
			'value' => 'sweet'
			'compare' => '='

Note that in that first example, the ‘compare’ key is left out in the second array. If nothing is set for ‘compare’, the default value of ‘=’ will be used.

Have A Project For Us?

Website design services & digital marketing tailored for user experience and
attracting the right traffic for you with support-that-matters!

Contact Us