For the different type of operation, we need to filter the default loop in WordPress. Sometimes we need to get post ID from a specific term ID(tag, category). In this tutorial, I will show you how to get post ID by category/tag ID.
The useful function is given in bellow-
<?php
/*
* Returns post IDs in a term with a given ID
*
* @param int $term_id(Category ID, Tag ID)
*
* @return array|int Post ID(s)
*/
function get_post_id_by_term_id( $term_id ){
global $wpdb;
$ids = $wpdb->get_col( $wpdb->prepare( "SELECT object_id FROM $wpdb->term_relationships WHERE term_taxonomy_id = %d", $term_id ) );
if( count( $ids ) > 1 )
return $ids; // return array
else
return $ids[0]; // return int
}
?>
Here we have used
$wpdb
global object of wpdb class which contains a set of functions used to interact with a database.
In fact, using
$wpdb
you can get IDs of posts by any parameter — category name, publish date, number of comments, even by comment author email etc.
🙂 happy coding!

Previous Article
How to set perfect product image sizes in WooCommerce
Next Article




