25oct
15

Esta es otra de las peticiones estrella en el foro, y ciertamente al final resulta que es bastante sencillo conseguirlo, similar a otros métodos de crear contenidos personalizados, como ya vimos con las barras laterales.

Lo primero que hay que hacer es crear los ficheros de cabecera. Crea tantas cabeceras como quieras. En este ejemplo hay 3 cabeceras personalizadas, tomadas del theme por defecto de WordPress, a las que se ha llamado headercontacto.php, headergaleria.php y headerbase.php, donde esta última sería la cabecera por defecto.

Utilizando la función include() y tags condicionales puedes definir fácilmente las cabeceras personalizadas. Solo tienes que remplazar el fichero header.php por el siguiente código:

<?php
if (is_page('contact')){
	<?php include(TEMPLATEPATH.'/headercontact.php'); ?>
}
elseif (is_page('gallery')){
	<?php include(TEMPLATEPATH.'/headergallery.php'); ?>
}
else {
	<?php include(TEMPLATEPATH.'/headerdefault.php'); ?>
}
?>

Lo que hace el ejemplo es “mirar” si la página que estás visualizando y si, por ejemplo, es la página de contactos ‘contacto‘ carga una cabecera (headercontacto.php), si es de la galería ‘galeria‘ mostrará headergaleria.php, en caso contrario, si no es ninguna de estas cargará la cabecera por defecto.

Por supuesto, partiendo del fichero header.php por defecto de tu plantilla debes crear las cabeceras personalizadas, cada una con su imagen o contenidos exclusivos.

Para saber más:

  • Pingback: Bitacoras.com

  • http://www.gsxr.es tote guerrero

    muy bueno…
    Fernando, habria alguna manera de hacer lo mismo pero con las categorias del Blog???

  • http://www.gamebyte.es Krash

    A mi me gustaría saber como hacer que la imagen de cabecera fuera “rotando”, es decir, que cambiara cada cierto tiempo (sin que tengan que actualizar el blog), no sé si me explico, que cada x minutos o x segundos cambie la imagen a otra ;)

  • Pingback: No dejes de leer… |

  • http://iphonediario.com krash
  • Piropeator

    Puedes aclararme qué es “is_page()” ??
    No lo encuentro en la documentación del PHP.

  • http://tapaycontratapa.com dea4ever

    Hola… donde tengo que poner ese codigo?

  • http://fernandotellado.com/ Fernando Tellado

    Eso va en header.php, sustituyendo lo que haya

  • http://w adrian

    Hola. He probado el código, pero me da error en la linea 3 del header.php:
    “unexpected <"
    lo he copiado igual al que tu pones, cambiando solo el nombre de los ficheros. ¿Que puede ser?

    Gracias, un saludo y Feliz año!

  • Aang

    Hola Fernando, 

    Soy nueva en esto de WordPress, apenas estoy creando mi sitio y me ha encantado lo que llevo!! Tengo una duda, hay algún plugin que pueda mostrar la cabecera cada cierto tiempo, por ejemplo; día y noche?  =) 

    Saludos!

    • http://fernandotellado.com Fernando

      Pues no lo conozco, lo siento

      • Aang

        Ya encontré un plugin que lo hace! Muchas gracias de todas maneras, Saludos!!

  • Djmiggy

    Hola que tal, al igual que Aang estoy comenzando con WordPress y me gustaría una ayudita sobre como colocar los enlaces en la cabecera a mi Twitter , Facebook u otras redes sociales, parecido a como lo tienes aquí arriba. 

    Muchas gracias de antemano

    • http://fernandotellado.com Fernando

      Si tu tema usa los nuevos menús de WP es tan fácil como añadir una URL externa