Consulta personalizada que devuelve todo [cerrado]

4

Falta algo en algún lugar, pero no puedo conectar los puntos. Todo sale correctamente, excepto que la consulta devuelve todo desde el DB, no solo las publicaciones. ¿Alguien puede detectar una razón para este comportamiento?

Habiendo perdido un poco el tiempo, sé que está relacionado con add_filter, eliminarlo permite que la consulta funcione normalmente. Sin embargo, todavía no sé qué está causando el comportamiento involuntario.

Resuelto: omití un período ... olvidé concatenar el $ donde el parámetro pasó a my_posts_where (). Gawd He estado mirando esto por 3 horas ...

// Filter 'posts where' so we can limit the date range of a custom query
function my_posts_where( $where = '' ) {

// Posts from the last 30 days
// ERROR $where = " AND post_date > '" . date( 'Y-m-d', strtotime( '-30 days' ) ) . "'";
$where .= " AND post_date > '" . date( 'Y-m-d', strtotime( '-30 days' ) ) . "'";
return $where;
}

// Output a list of the most popular entries from the past 7 days
function my_popular_entries() {

// Filter the query
add_filter( 'posts_where', 'my_posts_where' );
$args = array(
    'posts_per_page' => 12,
    'orderby' => 'meta_value_num',
    'meta_key' => 'Views',
    'post_type' => 'post',
);
$query = new WP_Query( $args );
remove_filter( 'posts_where', 'my_posts_where' );

// Create the list, assuming we have posts
if ( $query->have_posts() ) :
    $html = '<section id="popular-entries" class="widget"><h1 class="widget-title">Popular Entries</h1><ul class="entries-list">';

    while ( $query->have_posts() ) : $query->the_post();

        $html .= '<li><article class="hentry">';
        $html .= '<div class="text"><h1 class="entry-title"><a href="' . get_permalink() . '" rel="bookmark">' . get_the_title() . '</a></h1></div>';
        $html .= '</article></li>';
    endwhile;

    $html .= '</ul></section>';
    echo $html;

    // Reset the post variable
    wp_reset_postdata();
endif;
}
    
pregunta CrazyQuery 27.07.2012 - 22:55

0 respuestas

Lea otras preguntas en las etiquetas