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?!
1 Comment
More posts from themightymo.com
My WordPress Maintenance Process
A few quick things: My WordPress Maintenance Process Demo, Part 1 Transcript: You’ll see immediately after logging in, you see the 11 updates needed as well as some messages. I’m just gonna quickly read. It looks like this. I don’t need to worry about. Are you enjoying Monster Insights? Not really <laugh>. What’s to enjoy…
How to style FacetWP checkbox hierarchy results using jQuery
I recently invested many hours trying to target and style a FacetWP taxonomy facet that uses hierarchy for display. It should be noted that you can use straight up CSS for some styling (and should use css wherever possible), but sometimes you need javascript to target parent elements and such. I thought I’d document the…
How to fix SpinupWP ballooning disk space issue
A site we host on Digital Ocean recently went down. It took me a lot of troubleshooting and digging before realizing that the issue was that our disk space was maxed out on Digital Ocean. The site in question needs ~20gb of space, so our 50gb server should be plenty. But alas, there it was…
The category id should also be located in the $cat variable on the category page.