Revision: 15325
Updated Code
at March 22, 2010 00:57 by kristarella
Updated Code
<?php // just before loop in category theme file: $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; $current_cat = get_query_var('cat'); $args=array( 'category__in' => array($current_cat), 'paged' => $paged ); query_posts($args); // after loop in category theme file $cat = get_query_var('category__in'); set_query_var("cat",$cat[0]); // or in Thesis custom_functions.php function remove_child_cats() { if (is_category()) : $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; $current_cat = get_query_var('cat'); $args=array( 'category__in' => array($current_cat), 'paged' => $paged ); query_posts($args); remove_action('thesis_hook_archive_info', 'thesis_default_archive_info'); echo ' <div id="archive_info">' . "\n"; ?> <p><?php _e('From the category archives:', 'thesis'); ?></p> <h1><?php echo get_cat_name($current_cat); ?></h1> <?php echo ' </div>' . "\n"; endif; } add_action('thesis_hook_before_content','remove_child_cats'); function reset_cat() { $cat = get_query_var('category__in'); set_query_var("cat",$cat[0]); } add_action('thesis_hook_after_content','reset_cat');
Revision: 15324
Updated Code
at March 22, 2010 00:56 by kristarella
Updated Code
// just before loop in category theme file: $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; $current_cat = get_query_var('cat'); $args=array( 'category__in' => array($current_cat), 'paged' => $paged ); query_posts($args); // after loop in category theme file $cat = get_query_var('category__in'); set_query_var("cat",$cat[0]); // or in Thesis custom_functions.php function remove_child_cats() { if (is_category()) : $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; $current_cat = get_query_var('cat'); $args=array( 'category__in' => array($current_cat), 'paged' => $paged ); query_posts($args); remove_action('thesis_hook_archive_info', 'thesis_default_archive_info'); echo ' <div id="archive_info">' . "\n"; ?> <p><?php _e('From the category archives:', 'thesis'); ?></p> <h1><?php echo get_cat_name($current_cat); ?></h1> <?php echo ' </div>' . "\n"; endif; } add_action('thesis_hook_before_content','remove_child_cats'); function reset_cat() { $cat = get_query_var('category__in'); set_query_var("cat",$cat[0]); } add_action('thesis_hook_after_content','reset_cat');
Revision: 15323
Updated Code
at March 21, 2010 18:22 by kristarella
Updated Code
// just before loop in theme file: if (is_category()) : $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; $current_cat = get_query_var('cat'); $args=array( 'category__in' => array($current_cat), 'paged' => $paged ); query_posts($args); endif; // or in Thesis custom_functions.php function remove_child_cats() { if (is_category()) : $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; $current_cat = get_query_var('cat'); $args=array( 'category__in' => array($current_cat), 'paged' => $paged ); query_posts($args); endif; } add_action('thesis_hook_before_content','remove_child_cats');
Revision: 15322
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at June 30, 2009 22:29 by kristarella
Initial Code
function exclude_child_cats($query) { if ( is_category() ) : $current_cat = single_cat_title('',false); $current_cat_ID = get_cat_ID("$current_cat"); $ex_cats = get_categories("child_of=$current_cat_ID"); foreach ($ex_cats as $ex_cat) : $excluded[] = $ex_cat->cat_ID; endforeach; $ex = '-' . implode(' -', $excluded); $query->set('cat', "$current_cat_ID . $ex"); return $query; endif; } add_filter('pre_get_posts', 'exclude_child_cats');
Initial URL
Initial Description
Completely changed original function, which stopped working around WP2.8.
Initial Title
Exclude child categories from category archive
Initial Tags
wordpress
Initial Language
PHP