Category index featured image

I wish to set a featured/header image for each of my category archive pages, how would I go about doing this without hard coding each category into the theme?

An example of the page is at http://keswickscouts.org/section/cubs

Read More

The code form header.php is

            <div id="main-image">
        <?php
            // Check to see if the header image has been removed
            $header_image = get_header_image();
            if ( ! empty( $header_image ) ) :
        ?>
            <a href="<?php echo esc_url( home_url( '/' ) ); ?>">
                <?php
                    if ( !is_404() && !is_attachment() ) { // Check if this is not 404 or attachment page
                        // Check if this is a post or page, if it has a post-thumbnail
                        if ( is_singular() && has_post_thumbnail( $post->ID ) && ( $image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'post-thumbnail' ) ) && $image[1] >= HEADER_IMAGE_WIDTH ) :
                        echo get_the_post_thumbnail( $post->ID, 'post-thumbnail' );
                    else : ?>
                        <img src="<?php header_image(); ?>" height="<?php echo get_custom_header()->height; ?>" width="<?php echo get_custom_header()->width; ?>" alt="" />
                <?php endif; } // end check for featured image or standard header ?>
            </a>
        <?php endif; // end check for removed header image ?>
        </div><!-- end #main-image -->

Related posts

Leave a Reply

1 comment

  1. What I did was; using the Taxonomy Images plugin to associate an image with each category, then to my theme’s header.php, below the <a> line in the above code;

    <?php 
                $image_id = apply_filters( 'taxonomy-images-queried-term-image-id', 0 );
                if ( is_category() && ! empty( $image_id )):
                 print apply_filters( 'taxonomy-images-queried-term-image', '',  
                    array(
                    'image_size' => 'header'
                ) );
                else : ?>
    

    And add <?php endif; ?> below the endif ‘end check for featured…’

    and defined the header image size in functions.php with

    add_image_size( 'header', 960, 260, true );