使用我的自定义 CMS 创建页面

Creating Pages with my Custom CMS

我今天开始创建一个 CMS,供我个人使用,用于管理目的,也可以自学一些东西。

我的管理区域中有一个部分,我可以在其中 create/update/delete 非常有用的页面或帖子。

我的问题是如何根据我存储在数据库中的信息生成页面和 URL?

例如我的 table "posts" 有几行包含 "post_title"、"post_content"、"post_slug" 等。我如何生成来自我数据库中此信息的页面(因为它显然不是基于 PHP 文件创建页面),所以我会有 http://mywebsite.com/cool-new-post-slug.php (然后我可以通过 ID 等获取内容)?

如果有人能为我指出正确的方向,那就太好了。谢谢你的回答。

如果我对你的问题的理解正确,你需要先从数据库中检索所有的 slug,然后使用它们来构建你的 url.

假设您使用的是 mysqli:

$query = "SELECT post_slug,post_title FROM posts";
$posts = mysqli_query($con,$query);
while($post = mysqli_fetch_assoc($posts)){

    echo "<a href=\"single.php?slug=" . $post["post_slug"] . "\">";
    echo $post["post_title"];
    echo "</a><br/>";

}

mysqli_free_result($posts);

然后在 single.php 您将使用 GET 变量 post_slug 来检索您的数据。

在您的 .htaccess 文件中,您可以使用 mod_rewrite 获取漂亮的 URLS,如下所示:

RewriteEngine On
RewriteBase /
RewriteRule posts/(.+?)/?$ single.php?slug=

这会显示 url http://mywebsite.com/posts/cool-new-post/ 您的浏览器,但它真正访问的是 single.php?slug=cool-new-post