使WordPress运行一切但主页

时间:2013-05-17 20:02:06

标签: wordpress

我们正在推出一个在线应用程序,它基本上只是一个静态index.php,其中嵌入了Flash。我们还想添加一个FAQ页面和一个博客。因此,除了https://www.example.com(应用程序)之外,我们还会有https://www.example.com/faq静态页面和https://www.example.com/blog

FAQ和博客可以通过WordPress安装运行,但我们希望保持应用程序本身从简单的index.php运行(以避免WP开销,一方面)。问题是,是否可以安装WP,使主页由我们的原始index.php运行,但其他所有内容都是WP静态页面或博客?

3 个答案:

答案 0 :(得分:2)

最简单的方法是使用.htaccesshome.php这样的文件作为默认索引页。这将是最好的,并会让你继续正常升级wordpress。

http://httpd.apache.org/docs/current/mod/mod_dir.html

答案 1 :(得分:1)

我真的不明白为什么你需要wordpress这样一个“静态”网站,但无论如何,一个解决方案可能是在root中安装index.php(例如http://www.myapp.com)然后给它wp it'自己的文件夹(http://www.myapp.com/wp/),但将blogurl和homeurl维护为该子文件夹(http://www.myapp.com/wp/)。

通过这种方式,您实际上会有2个索引,一个主应用程序(http://www.myapp.com/index.php)和一个子文件夹(http://www.myapp.com/wp/index.php)。

它们将作为完全不同的应用程序轻松链接。

当然还有很多其他方法可以做到这一点(例如,只创建一个特殊的home.php模板文件 - 同时不消除索引,结果将是相同的)或者只是将其他页面定义为静态主页,或重定向......一切都取决于你想要实现的目标和方式......

答案 2 :(得分:1)

虽然接受的答案中的解决方案有效,但会导致http://www.example.com/wp-admin/等网址导致404错误。这里的问题是Apache的Directory指令中的任何语句也适用于子目录。所以,如果我设置

DirectoryIndex home.php

在我网站的目录上,然后http://www.example.com/wp-admin/也会隐含地引用不存在的http://www.example.com/wp-admin/home.php

对我有用的解决方案实际上非常简单,并且需要对WordPress本身生成的.htaccess进行最少的修改:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^$ /home.php [L]
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
   RewriteRule . /index.php [L]
</IfModule>

这里重要的一点是第4行,我插入了RewriteRule ^$ /home.php [L]。就是这样!