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 3 años, 8 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