Foros del Web » Creando para Internet » Sistemas de gestión de contenidos » WordPress »

Que filtro se aplique a solo un loop y a no a todos

Estas en el tema de Que filtro se aplique a solo un loop y a no a todos en el foro de WordPress en Foros del Web. Tengo este filtro que lo que hace es mostrarme en un loop los artículos de las últimas 24 horas: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código PHP: Ver original ...
  #1 (permalink)  
Antiguo 04/03/2013, 12:09
 
Fecha de Ingreso: diciembre-2008
Mensajes: 738
Antigüedad: 15 años, 4 meses
Puntos: 15
Que filtro se aplique a solo un loop y a no a todos

Tengo este filtro que lo que hace es mostrarme en un loop los artículos de las últimas 24 horas:

Código PHP:
Ver original
  1. <?php  
  2.                             function filter_where($where = '') {
  3.                             //posts in the last 24 Hours
  4.                             $where .= " AND post_date > '" . date('Y-m-d H:i:s', strtotime('-30 hours')) . "'";
  5.                             return $where;
  6.                           }
  7.                             add_filter('posts_where', 'filter_where');
  8.                         ?>

El problema es que el filtro se aplica para todos los loops que tengo en la portada (Que son varios) y solo quiero que se aplique en uno. Este es el loop dónde quiero que se aplique. Espero me puedan ayudar.

Código PHP:
Ver original
  1. <?php $tiempo_query = new WP_Query('cat=6&posts_per_page=10'); ?>
  2.                         <?php if(have_posts()) : ?><?php while($tiempo_query->have_posts()) : $tiempo_query->the_post(); ?>
  3.                             <div class="textoreal">
  4.                             <p><a href="<?php the_permalink(); ?>"><?php echo custom_excerpt(144); ?></a></p>
  5.                             <p class="postauthor eltuit"><b><?php echo the_time('l j M g:i A'); ?></b></p>
  6.                             <p class="eltuit"><a href="http://twitter.com/share" data-url="<?php the_permalink(); ?>" class="twitter-share-button" data-text="<?php echo get_excerpt(100); ?>" data-count="horizontal" data-via="diariodecolima" data-related="diariodecolima:Siguenos" data-lang="es">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></p>
  7.                             </div>
  8.                         <?php endwhile; ?>
  9.                         <?php wp_reset_query(); ?>
  10.                         <?php endif; ?>

Espero me puedan ayudar, gracias :)
  #2 (permalink)  
Antiguo 04/03/2013, 17:03
Avatar de zanguanga
Moderadora
 
Fecha de Ingreso: julio-2009
Ubicación: España
Mensajes: 1.686
Antigüedad: 14 años, 9 meses
Puntos: 429
Respuesta: Que filtro se aplique a solo un loop y a no a todos

Yo probaría cambiando

Código PHP:
Ver original
  1. add_filter( 'posts_where', 'filter_where' );
por

Código PHP:
Ver original
  1. add_filter( 'posts_where', 'filter_where' );
  2. $query = new WP_Query( $query_string );
  3. remove_filter( 'posts_where', 'filter_where' );

Más info en https://codex.wordpress.org/Class_Re...ime_Parameters
__________________
Mi blog personal | Mi G+

Etiquetas: loop, php, post
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:45.