Today I needed to grab the id of the current category on an archives page in a WordPress theme I am building. The reason for this is that I need to load the most recent post in a category outside of the main loop. I added the following code to functions.php:

// Get the current category id if we are on an archive/category page
function getCurrentCatID(){
	global $wp_query;
	if(is_category() || is_single()){
		$cat_ID = get_query_var('cat');
	return $cat_ID;

Thanks to Hyperspatial for the above code!

Then in my template, I used the “cat” argument of wp_query to build my query as follows:

// Get the current category id from the function we created in functions.php
$current_category_ID =  getCurrentCatID();
$args = array( 'numberposts' => 1, 'offset'=> 0, 'cat' => $current_category_ID );
// ...continue code...

Pretty neat, eh?!


We love to communicate: phone, email, text, Facebook, Twitter, LinkedIn, you name it.



Call Now

Enroll in Our Free Beginner WordPress Class - delivered to your Email Inbox!

Become a WordPress superstar for FREE in only minutes a day!  Our free Beginner WordPress Email Class will be delivered to your inbox!

Learn More 

You Have Successfully Enrolled! Prepare For Amazing!