私は、ホームページ、検索ページ、アーカイブ、および著者のページの投稿に対して、このタイプのページネーションを開発するために取り組んでいます。送信された値 (現在のページ番号) を表示するようにサーバーに要求しています。ページ フォームの値が空の場合は 1 を使用します。値を取得して同じページに表示しています。
ただし、なぜ機能しないのかわかりません。ここに私のコードスニペットがあります:
<?php
if($_SERVER['REQUEST_METHOD'] == 'GET')
{
global $paged;
if(empty($paged))
$paged = 1;
else
{
$paged = $_GET['paged'];
}
if(isset($paged) && is_numeric($paged) && ($paged <= $pages) && ($paged >= 1)) //validation
{
if($pages == '')
{
global $wp_query;
$pages = $wp_query->max_num_pages;
if(!$pages)
$pages = 1;
}
if(1 != $pages)
{
?>
<form action="#" method="get" >Page
<input type="text" name="paged" value="<?php echo $paged; ?>">
of <?php echo $pages; ?>
<input type="submit">
</form>
<?php
if($paged > 1)
echo "<a href='" . get_pagenum_link($paged - 1) . "'>‹ Prev Page</a>";
if($paged < $pages)
echo "<a href=\"" . get_pagenum_link($paged + 1) . "\">Next Page ›</a>";
}
}
}
?>