PHP /引导页面分页

时间:2019-05-09 08:42:23

标签: php html

我是一名业余编码员,他从Joomla / WordPress迁移了我的网站,因为我希望对自己的网站进行更多控制。我有一个相当静态的网站,该网站显示最近的十篇文章,并希望以十个为一组显示沼泽帖子。

尽管我已经进行了很长一段时间的编码工作,但我还是PHP和Bootstrap 4的相对业余爱好者。

因此,我有一个包含三十多篇文章的网站,其中显示了博客文章的前10页(最新的)……这些文章未包含在数据库中,我的PHP代码在“文章”中查找它们所有文章名称为“ article0001”到“ article00xx”等的文件夹(依次)。我可以轻松地创建一系列显示11-20、21-30等文章的页面,但这是IMO的一个非常丑陋的解决方案。

我要制作的页面只有一个,可以显示1到10、11-20等页面,但是只需单击一个按钮就可以了……我创建了以下测试脚本,应该给出一个想法我正在尝试做的事情(对我的代码的业余性质深表歉意):

希望我在下面提供的代码有一定道理,并给出了我想做的事情的想法。从本质上讲(假设要阅读较旧的文章),这意味着:

将范围限制变量降低10 检查变量仍在1到商品总数之间(如有必要,进行调整)。 显示新的文章集。

        //
        // Set intial variables based on number of articles
        //
        $i = 0;
        do {
            $i++;
            $filename = "./articles/article" . substr("000$i", strlen ("000$i")-4) . ".php";
        } while(file_exists($filename));
        $articles = $i - 1;

        //
        // $articles to max articles
        // Set $max = $articles;
        // Set $min = $articles - 9;
        //
        $max = $articles;
        $min = $articles - 9;

        echo "Display articles from $max down to $min</br>";

        $i = $max;
        while($i >= $min) {
            $filename = "./articles/article" . substr("000$i", strlen ("000$i")-4) . ".php";
            echo "$filename </br>";
            $i = $i - 1;
        }

        // If BACK:
            // Set $min = $min-10
            // Set $max = $min+9

        // If FORWARD:
            // Set $max = $max+10
            // Set $min = $max+9

        // If $min < 1:
            // Set $min = 1
        // If $max < $articles:
            // Set $max = $articles

        //
    ?>

    <!-- Pagination -->
    <ul class="pagination justify-content-center mb-4">
        <li class="page-item">
            <?php 
                echo "<a class=\"page-link\" href=\"$prevfile\"> &larr; Prev </a>";
            ?>
        </li>
        <li class="page-item">
            <?php 
                echo "<a class=\"page-link\" href=\"$nextfile\"> Next &rarr; </a>";
            ?> 
        </li>
    </ul>

0 个答案:

没有答案