如何将HTML文件加载为WordPress页面(无301/无重定向)

时间:2020-10-16 作者:Jake

以下是我想做的:

页面URL:https://example.com/the-page/

应加载的内容:https://example.com/content/oct2020/index.html

当访问者访问永久链接/页面/时,我希望永久链接保持不变。而不是加载内容&;WordPress数据库中的模板文件,它只会显示索引。改为html文件。

我不想有人来看我/页面/";permalink,然后被301\'dhttps://example.com/content/oct2020/index.html.

我知道这可以用一个页面模板来完成,但是我需要所有的文件都在我的WP主题目录中。相反,我想将这些HTML文件托管在一个单独的目录中,完全不区分主题。有没有提供这种功能的插件,或者很容易编写成函数。php插件?或者最简单的解决方案是在我的中添加一行。htaccess文件?

2 个回复
SO网友:Pat J

您可以使用template_include hook 为了实现这一点。

将此添加到活动主题的functions.php 文件(或create a plugin).

add_filter( \'template_include\', \'wpse376643_load_html_page\' );
function wpse376643_load_html_page( $template ) {
    if ( is_page( \'the-page\' ) ) {
        // You\'ll have to use the server path to your index.html file.
        $template = \'/path/to/your/content/oct2020/index.html\';
    }
    return $template;
}

SO网友:Montassar Billeh Hazgui

首先,您需要在WordPress网站的根文件夹中创建一个新的空文件夹。通常,它位于此处:/public\\u html/。因此,我们的HTML模板的位置将是/public\\u HTML/landing/,其中“landing”是包含我们模板的文件夹的名称。该页面将在以下位置提供:http://www.domain.com/landing/. 有许多方法可以将文件上载到主机。您可以使用独立的文件管理器(例如Total Commander或FileZilla)。

相关推荐

无法以管理员身份从主站点在WordPress多站点网络上添加新插件或主题。错误:ERR_TOO_MANY_REDIRECTS

我不能以超级管理员的身份从主站点向wordpress多站点网络添加新插件或主题。它显示以下错误:ERR\\u TOO\\u MANY\\u重定向。然而,我可以访问所有页面,登录到每个站点的仪表板,甚至可以更改已安装插件或主题的现有代码。我无法安装任何新的,网络陷入了循环。但是,如果我在wp config中使用以下代码关闭多站点选项,则可以避免该问题。php:define(\'MULTISITE\', false); define(\'SUBDOMAIN_INSTALL\', false);