Soporte » Guías – Resolución de problemas » Entradas de slider duplicadas abajo

  • Resuelto ale

    (@realex)


    Hola 🙂 El problema que tengo es que las dos entradas del slider (arriba), que son las últimas publicadas, aparecen duplicadas abajo, donde necesito que solo estén las entradas que siguen. Ya he probado todo tipo de eventuales soluciones de otros foros pero ninguna me ha funcionado 🙁

    Este es el código PHP del slider:

    <?php
    		$args = array( 		
    				'tag_id' => 17,
    				'posts_per_page' => 2
    			);
    		$slide_posts = new WP_Query( $args );
    		$exclude_posts = array();
    
    		?>
    
    		<h1 class="front-title"><a href="<?php the_permalink() ?>"><?php the_title() ?></a></h1>
    		<?php if ( $slide_posts->have_posts() ) : ?>
    			<div dir="rtl" class="slider single-item-rtl">
    				<?php /* Start the Loop */ ?>
    				<?php 
    				while ( $slide_posts->have_posts() ) : $slide_posts->the_post();
    
    					array_push($exclude_posts, get_the_ID());
    
    					if (has_post_thumbnail()) :
    				 	?>
    					<div>
    						<a href="<?php the_permalink() ?>">
    							<?php the_post_thumbnail('wiral-lite-homepage-thumb-slider') ?>
    						</a>
    					</div>
    					<?php else : ?>
    					<div>
    						<a href="<?php the_permalink() ?>">
    							<img src="<?php echo esc_url( get_template_directory_uri() ) ?>/images/default-slide.jpg" alt="<?php the_title() ?>" />
    						</a>
    					</div>
    				<?php 
    					endif;
    				endwhile; 
    				?>
    			</div>
    		<?php else : ?>
    			<?php get_template_part( 'content', 'none' ); ?>
    		<?php endif; ?>
    
    		<?php wp_reset_postdata(); ?>

    Y este es el código del index.php:

    <?php
    theme_options = v4_options();
    $show_posts = new WP_Query( array( 'tag_id' => 17, 'posts_per_page' => 4 ) );
    get_header(); ?>
    
    	<?php if( $theme_options['slider'] == 1 && (is_home() || is_front_page()) && is_paged() == false) : ?>
    	<div class="banner-section clearfix">
    		<div class="banner">
    			<?php get_template_part( 'template-parts/content', 'slide' ); ?>
    		<div id="primary" class="content-area posts-section">
    		<main id="main" class="site-main clearfix" role="main">
    			<div class="post-items clearfix">
    			<?php if (  $show_posts-> have_posts() ) : ?>
    
    			<?php /* Loop */ ?>
    			<?php while ( $show_posts->have_posts() ) :  $show_posts->the_post(); ?>
    
    				<?php
    						get_template_part( 'template-parts/content', get_post_format());
                    ?>
    
    			<?php endwhile; ?>
    			<?php else : ?>
    
    				<?php get_template_part( 'template-parts/content', 'none' ); ?>
    
    			<?php endif; ?>
    			</div>
    		</main>
    	</div>
    		</div>
    		<div class="sidebar-home">
    			<?php get_sidebar('home'); ?>
    		</div>
    	</div>
    	<?php endif; ?>
    	
    <?php get_footer(); ?>
Viendo 4 respuestas - 1 de 4 (de 4 total)
  • Moderador LGrusin

    (@lgrusin)

    Tal como están los dos Loops sólo muestran las entradas de la etiqueta (Tag) 17. Si quieres el Slide con otros posts diferentes al index usa otra etiqueta.

    También podrías crear los query por categorías en vez de etiquetas.

    Un saludo

    Lo quiero es que en ambos loop se muestren la etiqueta 17, pero en el loop de arriba las últimas dos entradas publicadaas, y en el loop de abajo, las entradas que siguen a las últimas dos publicadas…

    • Esta respuesta fue modificada hace 2 años, 2 meses por  ale.
    Moderador LGrusin

    (@lgrusin)

    En el index.php
    $show_posts = new WP_Query( array( 'tag_id' => 17, 'posts_per_page' => 4, 'offset' => 2 ) )

    Esto hará que no se muestren los dos últimos post de esa etiqueta.

    Un saludo

    Eso funcionó, gracias! 🙂

Viendo 4 respuestas - 1 de 4 (de 4 total)
  • El debate ‘Entradas de slider duplicadas abajo’ está cerrado a nuevas respuestas.