0

特定のユーザーアクションのログを表示するプラグインを作成しています。

問題は、paginate_links()関数の方法ではなく、ページごとに5つの結果のみを表示するためにページ付けを追加する必要があることです。

これは私が持っているコードです(ページングを追加する必要があります)):

$mylink = $wpdb->get_results("SELECT * FROM wp_points");

foreach ($milink as $mostrar) 
{

<tr>

echo"<td>".$mostrar->punto_user_ID."</td>
<td>".$mostrar->punto_nombre."</td>
<td>".number_format($mostrar->punto_canjeados, 0, ',', '.')."</td>
<td>".cambiarFormatoFecha($mostrar->punto_fecha)."</td>";

}
echo"</tr>
</tbody>
</table>";

コードを手伝ってくれる人は誰でもしてください。

ありがとうございました!

4

2 に答える 2

1

これがうまくいく可能性のある簡単な解決策です

使用する関数

ceil: http: //php.net/manual/en/function.ceil.php

wpdb-> prepare http://codex.wordpress.org/Class_Reference/wpdb

ページのリンク http://codex.wordpress.org/Function_Reference/paginate_links

$per_page = 5;
$page = intval(get_query_var('page')); // cast to int to be on the safe side
$total_pages = ceil($wpdb->get_var("SELECT COUNT(*) FROM wp_points") / $per_page);  


//use $wpdb->prepare to help against sql injection
$sql  = $wpdb->prepare("SELECT * FROM wp_points LIMIT %d, %d", $page * $per_page, $per_page);


// your processing here 

$mylink = $wpdb->get_results($sql);
//...

// here's the helper no magick here, straight from docs
$big=999999999; // dummy used by 'base' below

echo paginate_links( array(
    'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ),
    'format' => '?page=%#%',
    'current' => max( 1, $page ),
    'total' => $total_pages,
) );
于 2012-12-04T05:16:39.660 に答える
0

wp_query (「ページネーションパラメータ」はページの途中にあります)を確認するには、次のように使用します。

$query = new WP_Query( 'posts_per_page=5' );
于 2012-12-04T10:05:03.030 に答える