• ianjeffery

    (@ianjeffery)


    Hi guys,

    Quick question…is it possible to assign a different header image for 4 different authors. So…what i want to achieve is each author will have a different header image to differentiate them from the other authors.

    Not sure if this is possible, any advice would be fab ??

Viewing 9 replies - 1 through 9 (of 9 total)
  • esmi

    (@esmi)

    You should be able to do this in single Posts and Pages using something like:

    <?php $header_image =  'header-default.jpg';
    if( is_singular() ) :
    $author_id = $post->post_author;switch ($author_id ) {
    	case x:
    	$header_image =  'header-a.jpg';
    
    	case y:
    	$header_image =  'header-b.jpg';
    }
    endif;
    ?>
    <img src="<?php echo get_stylesheet_directory();?>/images/headers/<?php echo $header_image;?>" width="xx" height="yy" alt="" />

    where $author_id holds the id of the Post/Page author.

    Thread Starter ianjeffery

    (@ianjeffery)

    Ah great, will this automatically assign a certain image every time a certain author posts, or does it have to be done individually for each post?

    esmi

    (@esmi)

    It should automatically assign a certain image every time a certain author posts.

    Thread Starter ianjeffery

    (@ianjeffery)

    That’s fabulous, where do I paste this code?

    esmi

    (@esmi)

    At a guess, I’d say in your theme’s header.php template file. You need to look through the theme and establish where/how it’s outputting the current header image and add the (adapted?) code accordingly.

    Thread Starter ianjeffery

    (@ianjeffery)

    Wicked, thanks for that, much appretiated ??

    esmi

    (@esmi)

    Glad I could help. If you have any problems adding the code to the relevant template file, drop a copy of the file into the WordPress pastebin and post the pastebin url here. Either myself or someone else should be able to give you a hand.

    Thread Starter ianjeffery

    (@ianjeffery)

    Wow, great, thanks again, will definitely keep that in mind ??

    Thread Starter ianjeffery

    (@ianjeffery)

    Just coming back to this, my header.php file under my theme looks like the below, do you know where i should paste the above code? Also, where in the code do i input the author name and how should it be inputed in?

    <?php
    
    /**
    
     * @package WordPress
    
     * @subpackage Yoko
    
     */
    
    ?><!DOCTYPE html>
    
    <html <?php language_attributes(); ?>>
    
    <head>
    
    <meta charset="<?php bloginfo( 'charset' ); ?>" />
    
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
    
    <title><?php
    
    	/*
    
    	 * Print the <title> tag based on what is being viewed.
    
    	 */
    
    	global $page, $paged;
    
    	wp_title( '|', true, 'right' );
    
    	bloginfo( 'name' );
    
    	$site_description = get_bloginfo( 'description', 'display' );
    
    	if ( $site_description && ( is_home() || is_front_page() ) )
    
    		echo " | $site_description";
    
    	if ( $paged >= 2 || $page >= 2 )
    
    		echo ' | ' . sprintf( __( 'Page %s', 'yoko' ), max( $paged, $page ) );
    
    ?></title>
    
    <link rel="profile" href="https://gmpg.org/xfn/11" />
    
    <link rel="stylesheet" type="text/css" media="screen" href="<?php bloginfo( 'stylesheet_url' ); ?>" />
    
    <?php if ( is_singular() && get_option( 'thread_comments' ) ) wp_enqueue_script( 'comment-reply' ); ?>
    
    <link rel="pingback" href="<?php bloginfo( 'pingback_url' ); ?>" />
    
    <!--[if lt IE 9]>
    
    <script src="<?php echo get_template_directory_uri(); ?>/js/html5.js" type="text/javascript"></script>
    
    <![endif]-->
    
    <?php wp_head(); ?>
    
    </head>
    
    <body <?php body_class(); ?>>
    
    <div id="page" class="clearfix">
    
    	<header id="branding">
    
    		<nav id="mainnav" class="clearfix">
    
    			<?php wp_nav_menu( array( 'theme_location' => 'primary' ) ); ?>
    
    		</nav><!-- end mainnav -->
    
    		<?php global $yoko_options;
    
    		$yoko_settings = get_option( 'yoko_options', $yoko_options ); ?>
    
    		<hgroup id="site-title">
    
    		<?php if( $yoko_settings['custom_logo'] ) : ?>
    
    			<a href="<?php echo home_url( '/' ); ?>" class="logo"><img src="<?php echo $yoko_settings['custom_logo']; ?>" alt="<?php bloginfo('name'); ?>" /></a>
    
    		<?php else : ?>
    
    			<h1><a href="<?php echo home_url( '/' ); ?>" title="<?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>"><?php bloginfo( 'name' ); ?></a></h1>
    
    				<h2 id="site-description"><?php bloginfo( 'description' ); ?></h2>
    
    		<?php endif; ?>
    
    		</hgroup><!-- end site-title -->
    
            <?php
    
    		// The header image
    
    		// Check if this is a post or page, if it has a thumbnail, and if it's a big one
    
    			if ( is_singular() &&
    
    				current_theme_supports( 'post-thumbnails' ) &&
    
    				has_post_thumbnail( $post->ID ) &&
    
    				( /* $src, $width, $height */ $image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'post-thumbnail' ) ) &&
    
    				$image[1] >= HEADER_IMAGE_WIDTH ) :
    
    				// Houston, we have a new header image!
    
    						echo get_the_post_thumbnail( $post->ID , array(1102,350), array('class' => 'headerimage'));
    
    						elseif ( get_header_image() ) : ?>
    
    						<img src="<?php header_image(); ?>" class="headerimage" width="<?php echo HEADER_IMAGE_WIDTH; ?>" height="<?php echo HEADER_IMAGE_HEIGHT; ?>" alt="" /><!-- end headerimage -->
    
    					<?php endif; ?>
    
    					<div class="clear"></div>
    
    		<nav id="subnav">
    
    			<?php
    
    			if (is_nav_menu( 'Sub Menu' ) ) {
    
    			wp_nav_menu( array('menu' => 'Sub Menu' ));} ?>
    
    		</nav><!-- end subnav -->	
    
    </header><!-- end header -->
Viewing 9 replies - 1 through 9 (of 9 total)
  • The topic ‘Multiple headers for authors’ is closed to new replies.