-4

谁能向我解释如何为我们在 WordPress 数据库中的内容实现分页?我们有大约 2000 条记录,我不想在单个页面中显示它们。

有人可以帮忙吗?这是我拥有的代码,我可以显示我的数据库的内容

<?php
require_once( dirname(__FILE__) . '/wp-load.php' );
global $wpdb;
$table = $wpdb->prefix."car_saver";  
$data = $wpdb->get_results("SELECT * FROM " . $table );
if(count($data))
{
?>
<table width="700" cellspacing="0" border="0">
  <thead>
     <tr>
        <th>id</th>
        <th>Make</th>
        <th>Model</th>
        <th>Sub Model</th>
        <th>MSRP</th>
        <th>Utility</th>  
        <th>Feature</th>            
        <th>Year</th>   
      </tr>
  </thead>
  <tfoot>
        <tr>
        <th>id</th>
        <th>Make</th>
        <th>Model</th>
        <th>Sub Model</th>
        <th>MSRP</th>
        <th>Utility</th>  
        <th>Feature</th>            
        <th>Year</th>   
      </tr>
  </tfoot>
  <tbody>
  <?php 
    foreach($data as $p): ?>
     <tr>
      <td align="center"><?php echo $p->car_id; ?></td>
      <td align="center"><?php echo $p->Make; ?></td>
      <td align="center"><?php echo $p->Model; ?></td>
      <td align="center"><?php echo $p->subModel; ?></td>
      <td align="center"><?php echo $p->MSRP; ?></td>
      <td align="center"><?php echo $p->Utility; ?></td>
      <td align="center"><?php echo $p->Feature; ?></td>
      <td align="center"><?php echo $p->Year; ?></td>
     </tr>
     <?php endforeach; ?>
  </tbody>
  </table>
<?php 
}
else echo "data not found";
?> 
4

2 回答 2

0

使用<!--nextpage-->编辑帖子/页面中的选项。但是您需要使用一个主题,该主题知道如何翻译<!--nextpage-->标签和为页面编号,并添加指向上一页和下一页的链接。

许多自定义主题不自动支持这一点。您可能必须添加它,或者选择一个已经支持它的主题。

于 2013-03-12T23:54:22.377 回答
0

你需要的不仅仅是试试这个尺寸::

$results_per_page = 10;
$current = get_query_var( 'paged' ) ? get_query_var( 'paged' ) : 1;

global $wpdb;

$table = $wpdb->prefix."car_saver";  
$rows = $wpdb->get_results("SELECT * FROM " . $table );


if( !empty($wp_query->query_vars['s']) ):
 $args['add_args'] = array('s'=>get_query_var('s'));
endif;

$args = array(
  'base' => @add_query_arg('paged','%#%'),
  'format' => '',
  'total' => ceil(sizeof($rows)/$results_per_page),
  'current' => $current,
  'show_all' => false,
  'type' => 'plain',
  );

  echo paginate_links($args);
  $start = ($current - 1) * $results_per_page;
  $end = $start + $results_per_page;
  $end = (sizeof($rows) < $end) ? sizeof($rows) : $end;
  echo '<br />';

 for($i=$start;$i < $end ;++$i ):
  $row = $rows[$i];
 endfor;
于 2013-03-13T03:19:39.673 回答