Yogesh Chauhan's Blog

WordPress: How to find all posts with a specific custom field value?

in WordPress on March 19, 2021

We can pass arguments in get_posts function and WP_Query Object and query custom field values.

Here’s a basic example of how to use get_posts function and pass the arguments to find all posts where a custom field called “blog” has a value of “yogeshchauhan”.



$posts = get_posts(array(
	'numberposts'	=> -1,
	'post_type'	=> 'posts',
	'meta_key'	=> 'blog',
	'meta_value'	=> 'yogeshchauhan'
));


Here’s another basic example of how to use get_posts function and pass the arguments to find all posts from custom post type “guest_posts” where a custom field called “blog” has a value of “yogeshchauhan”.



$posts = get_posts(array(
	'numberposts'	=> -1,
	'post_type'	=> 'guest_posts',
	'meta_key'	=> 'blog',
	'meta_value'	=> 'yogeshchauhan'
));


Custom Fields Query like SQL: AND Operator

In the following example, I am passing multiple arguments in get_posts function to find all posts where a custom field called “blog” has a value of “yogeshchauhan” or “w3org”.

Also, there is another custom field called “featured” which is a checkbox that indicates if the blog post if featured or not and it takes boolean parameter. We are passing 1 as a parameter to see whether that checkbox is checked.



$posts = get_posts(array(
	'numberposts'	=> -1,
	'post_type'		=> 'post',
	'meta_query'	=> array(
		'relation'		=> 'AND',
		array(
			'key'	 	=> 'blog',
			'value'	  	=> array('yogeshchauhan', 'w3org'),
			'compare' 	=> 'IN',
		),
		array(
			'key'	  	=> 'featured',
			'value'	  	=> '1',
			'compare' 	=> '=',
		),
	),
));


Custom Fields Query like SQL: OR Operator

We can convert the same example from above AND operator and just change it to OR operator example.



$posts = get_posts(array(
	'numberposts'	=> -1,
	'post_type'		=> 'post',
	'meta_query'	=> array(
		'relation'		=> 'OR',
		array(
			'key'	 	=> 'blog',
			'value'	  	=> array('yogeshchauhan', 'w3org'),
			'compare' 	=> 'IN',
		),
		array(
			'key'	  	=> 'featured',
			'value'	  	=> '1',
			'compare' 	=> '=',
		),
	),
));


Credit: ACF Docs


Most Read

#1 Solution to the error “Visual Studio Code can’t be opened because Apple cannot check it for malicious software” #2 How to add Read More Read Less Button using JavaScript? #3 How to check if radio button is checked or not using JavaScript? #4 Solution to “TypeError: ‘x’ is not iterable” in Angular 9 #5 PHP Login System using PDO Part 1: Create User Registration Page #6 How to uninstall Cocoapods from the Mac OS?

Recently Posted

#Apr 8 JSON.stringify() in JavaScript #Apr 7 Middleware in NextJS #Jan 17 4 advanced ways to search Colleague #Jan 16 Colleague UI Basics: The Search Area #Jan 16 Colleague UI Basics: The Context Area #Jan 16 Colleague UI Basics: Accessing the user interface
You might also like these
user_can vs current_user_can in WordPressWordPressALTER DATABASE in PostgreSQLPostgresHow to create a simple digital clock using JavaScript?JavaScriptHow to add a scroll back to top button using JavaScript and CSS?CSSaddcslashes() and addslashes() String Functions in PHPPHPHow does AdSense calculate page loading time?JavaScript