Diferentes imágenes de cabecera para cada entrada y/o página

Inicio Foros WordPress General WordPress.org Diferentes imágenes de cabecera para cada entrada y/o página

Este debate contiene 2 respuestas, tiene 2 mensajes y lo actualizó  homerox hace 4 años, 4 meses.

  • Autor
    Publicaciones
  • #77085

    homerox
    Participante

    Hola colegas, estoy desarrollando el siguiente sitio: http://designio.cl/consejo/ (ésta es la versión html; la otra versión la estoy trabajando en localhost). Bueno, resulta que tengo la necesidad de cargar una imagen como fondo de cabecera distinta para cada página y/o post. De la forma que lo resolví, utilizo muchos archivos header-algo.php y no lo encuentro práctico. Si a alguien se le ocurre un método mucho más efectivo estaría muy agradecido. Nota: estoy empezando en el mundo de WP

    el header.php

    <?php if (is_home())
    { include(‘header-home.php’); }
    else if (in_category(‘artistas-2’))
    { include(‘header-artistas.php’); }
    else if (in_category(‘espacios-2’))
    { include(‘header-espacios.php’); }
    else if (in_category(‘circuitos-2’))
    { include(‘header-circuitos.php’); }
    else if (in_category(‘acciones-2’))
    { include(‘header-acciones.php’); }
    else
    { get_header(); }
    ?>

    y cada header-algo…

    <?php
    $the_query = new WP_Query(array(
    ‘post_type’ => ‘imagen_de_cabecera’,
    ‘posts_per_page’ => 1,
    ‘paginas_imagen_encabezado’ => ‘artistas’ //….taxonomía
    ) );

    if ( $the_query->have_posts() ) {
    while ( $the_query->have_posts() ) {
    $the_query->the_post();
    $imagen = get(‘selecciona_imagen’);

    echo ‘<div class=»parallax-image-wrapper parallax-image-wrapper-100″
    data-anchor-target=»#dragons + .gap»
    data-bottom-top=»transform:translate3d(0px, 200%, 0px)»
    data-top-bottom=»transform:translate3d(0px, 0%, 0px)»>’;
    echo ‘<div class=»parallax-image parallax-image-100″
    style=»background-image:url(‘.($imagen).’
    data-anchor-target=»#dragons + .gap»
    data-bottom-top=»transform: translate3d(0px, -60%, 0px);»
    data-top-bottom=»transform: translate3d(0px, 60%, 0px);»>’;
    echo ‘</div>’;
    echo ‘</div>’;

    echo ‘<div class=»ancho»>’;
    echo ‘<div class=»slide»>’;
    echo ‘<div id=»skrollr-body»>’;
    echo ‘<div class=»header» id=»dragons»></div>’;
    echo ‘<div class=»gap gap-100″ style=»background-image: url(‘.($imagen).’);»></div>’;
    echo ‘</div>’;
    echo ‘</div>’;

    }
    } else {
    // imagen de cabecera no encontrada
    }
    /* Restore original Post Data */
    wp_reset_postdata();
    ?>

  • #77100

    Alessandro Degiusti
    Participante

    Podrías hacer dos cosas, una es hacer que la imagen de cabecera principal se defina en Apariencia>Cabecera y que cambias el código para que la imagen destacada de cada post se coloque en la cabecera, no se si me explico.

    O también podrias usar los campos personalizados.

  • #77171

    homerox
    Participante

    Al final fue muy simple y lo resolví con campos personalizados. Gracias Alessandro

El foro ‘General WordPress.org’ está cerrado y no se permiten nuevos debates ni respuestas.

Pin It on Pinterest

Ir al contenido