对于“经典”网站,可以为每个网页创建/foldername/index.php
。但是,使用WordPress,情况并非如此。例如,如果页面是使用URI为http://myblog.org/some_page
的WordPress创建的,则在Web主机的FTP中找不到文件夹www/myblog.org/some_page
。
我的问题是,如何为任意http://[MY_WEBSITE].com/[page_name]
提供位于page_name
的网页,而无需为每个page_name
创建新文件夹?
答案 0 :(得分:1)
一种方法是使用page_name作为公共文件的参数,并使用它来提供所需页面的内容。
答案 1 :(得分:0)
您告诉服务器rewrite the URL。大多数服务器都以自己的方式完成它,所以要了解如何查看服务器的文档。
答案 2 :(得分:0)
Wordpress使用利用require()
函数的模板和通常称为“The Loop”的foreach循环来检索内容。
使用不同的模板调用不同的页面。如果您想确切知道如何计算此逻辑,请查看this.
答案 3 :(得分:0)
.htaccess
文件处理(在Apache服务器中)该行为,其中定义了rewrite rules。重写规则基本上捕获传入流量并将这些请求定向到服务器上的文件(通常是单个页面,它将充当router
)。
然后,路由器负责获取输入URI(通常通过PHP中的$_SERVER["REQUEST_URI"]
)并确定如何处理它,并最终输出该请求的输出。
对于一个像样的路由器,你可以看看klein.php
。另外,一个简短的例子:
# htaccess file
RewriteEngine On
RewriteRule ^[^\.]+$ index.php
index.php
:
$route = $_SERVER["REQUEST_URI"];
if($route === '/home')
{
echo 'This is the homepage';
}