自定义wordpress sql查询与分页

时间:2013-07-28 09:04:36

标签: wordpress pagination next

我为我的博客做了一个自定义的SQL查询。代码的作用是从具有库的帖子中检索最新图像。通过这种方式,我可以显示最新的...不要说12个有图库的帖子 - 代码实际显示附加到帖子的第一个图像。

问题是我无法为此创建下一个prev功能,我真的需要这个

以下是代码:

<?php wp_reset_query();
 global $wpdb;
 $posts = $wpdb->get_results
 ("
 SELECT *
 FROM $wpdb->posts 
 WHERE
 post_status = 'publish'
 AND
 ID IN (
            SELECT DISTINCT post_parent
            FROM $wpdb->posts
            WHERE
              post_parent > 0
            AND
              post_type = 'attachment'
            AND
              post_mime_type IN ('image/jpeg', 'image/png')
  )
ORDER BY post_date DESC LIMIT 0, 12
");

foreach($posts as $post) :
setup_postdata($post);
?>

<?php
$images = get_children(array(
  'post_parent' => get_the_id(),
  'post_type' => 'attachment',
  'post_mime_type' => 'image',
  'orderby' => 'menu_order',
  'order' => 'ASC'
));
$ids = array_keys($images);
            ?>



   <div style="height:132px; width:132px; float:left; margin-right:1px; margin-top:1px; overflow:hidden;" ><?php 
  echo the_attachment_link($ids[0],false, false, true);
            ?></div>


<?php
endforeach;
wp_reset_query();
?>

谢谢

2 个答案:

答案 0 :(得分:0)

您需要将$paged参数放入代码中,然后调用previous/next链接。请参阅:https://codex.wordpress.org/Pagination#Adding_the_.22paged.22_parameter_to_a_query

答案 1 :(得分:0)

这就是我的问题!当使用wpdb对象时,该方法似乎有效,但在我的情况下,它是一个孤立的PHP PDO / SQL调用,它不使用查询对象:(