2010-01-21 4 views
1

Мне было интересно, как я могу получить последние три сообщения до (и после) определенной даты.Получите три сообщения до определенной даты в Wordpress

Я искал query_post, но не могу понять.

Я ищу для этого в functions.php. В идеале, он будет возвращать только основную домашнюю страницу. Title, first image, num_comments и т. Д. Мне не нужно запрашивать всю статью.

EDIT: Мне также хотелось бы, чтобы все это выполнялось в одной функции. Есть объяснения, как добавить функцию фильтра, которую я не хочу делать. Если функциональность может быть просто помещена в add_filter (...), это будет нормально.

Любая помощь будет очень признательна!

Мэтт

ответ

0

Got'er. Использует AJAX. Спасибо, что вы являетесь балером PHP (внутренние функции).

function ajax_get_next_posts($wp) { 
    if(!$_POST['date']) return 'error'; 

    function filter_where($where = '') { 
      $where .= " AND post_date <= '{$_POST['date']}'"; 
     return $where; 
    } 
    add_filter('posts_where', 'filter_where'); 
    $posts = query_posts('posts_per_page=3'); 
    print_r($posts); 
} 
+0

Возможно, вам стоит избежать переменной $ _POSTed. Попробуйте: глобальный $ wpdb; $ where = $ wpdb-> prepare ("AND post_date <=% s", $ _POST ['date']); return $ где; – nickohrn

Смежные вопросы