使用我的自定义 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
我今天开始创建一个 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