所以我有一个插件,可以向 WordPress 添加短代码。应用时,它从远程 API 中提取数据,对其进行解析并相应地显示。API 在内部以查询参数“per_page”和“page”的形式对数据进行分页,其中“per_page”是每页显示的项目数,“page”是要显示的集合中的哪个页面。我遇到的问题是找出在前端处理此类分页的最佳方法。到目前为止,我提出的唯一选择是提取总页数,相应地显示分页栏,并将任何数字(或下一个/上一个)作为 POST 变量传递回显示数据的函数。这个解决方案充其量似乎是骇人听闻的,并且需要重新加载我不想拥有的多余页面。有没有人对更清洁的处理方式有任何建议?理想情况下,我希望它内联加载数据,即;根本不重新加载页面。
这是我目前正在使用的...
<?php if ($result->info['pages'] > '1') {
if ($result->info['page'] != '1') {
echo '<a onClick="location.replace(\'?page=' . ($result->info['page'] - 1) . '\');">Prev</a> ';
} else {
echo 'Prev ';
}
for ($i = 1; $i <= $result->info['pages']; $i++) {
if ($i == $result->info['page']) {
echo $i . ' ';
} else {
echo '<a onClick="location.replace(\'?page=' . $i .'\');">' . $i . '</a> ';
}
}
if ($result->info['page'] != $result->info['pages']) {
echo '<a onClick="location.replace(\'?page=' . ++$result->info['page'] . '\');">Next</a>';
} else {
echo 'Next';
}
} ?>