繁体   English   中英

Wordpress-显示我的博客以及主要站点

[英]Wordpress - Show my blog along with main site

我已经在基于网站的根文件夹中运行了基于PHP的主要网站。 让我们称之为www.example.com。 我大约有几页。 一些导航链接是:

主页| 服务| 关于我们| 联系我们

我想为此添加一个Wordpress博客。

主页| 博客| 服务| 关于我们| 联系我们

请注意,我现在在网站的根文件夹中创建了一个名为“ blog”的子文件夹,并且我已将所有Wordpress“文件”上传到Blog文件夹中。 因此,从现在开始,如果要访问我的博客,请访问:www.example.com/blog

到目前为止,还可以。 现在,当我向博客添加新帖子时,我不希望人们在尝试阅读帖子时看到URL中的“ / blog”。 我通过以下链接,但没有帮助: 给WordPress提供自己的目录

如果人们只想托管自己的Wordpress网站而没有其他东西,那么上面的链接将有所帮助。 保持根文件夹干净并仍然从根文件夹访问URL只是有帮助的。 但这不是我的情况。 我已经在根文件夹中运行了基于PHP的网站。 我只想将博客作为添加内容,但是跳过显示该博客已添加到另一个文件夹的情况。

我也在wordpress的管理面板中进行了以下更改:

在“设置>常规”页面中:

WordPress地址(URL):www.example.com/blog

网站地址(URL):www.example.com

在“永久链接设置”页面中,选择以下选项: http : //www.example.com/sample-post/

现在,主页和其他页面加载正常。

问题:

当我访问: www.example.com/blog时 ,它说:

“这有点令人尴尬,不是吗?看来我们找不到您想要的东西。也许搜索或下面的链接之一可以帮助您。”

  1. 我不明白为什么希望看到该帖子时会看到以上内容。 有一个Hello Word示例帖子。 我希望看到一个链接,但是那没有发生。 为什么会这样呢?

  2. 此外,如果单击“主页”链接,它将带我到网站的主页,这是正确的。 但是,如果我单击“近期帖子”下的“示例页面”菜单链接或“ Hello World”链接,则会在地址栏中显示以下URL:www.example.com/hello-world/但是,它不会向我显示发布。 相反,它会加载我网站的根文件夹的index.php页面,这不会发生。 看起来好像没有加载CSS文件,因为它删除了所有CSS。 因此,当我访问以下网址时,就会显示index.php页面的CSS剥离版本:www.example.com/hello-world/

我试图找到解决方案,但是所有这些都导致了“给WordPress提供其自己的目录”一文。 该页面中提到的解决方案不适用于我的情况。 如何解决呢? 感谢所有帮助。

谢谢。

方法一

这会很脏,我不确定这是否还能奏效,但是请尝试以下操作(我希望您的网站是程序性的,并且您没有使用任何框架,否则会使事情变得有些复杂):

  1. 将博客放在文档根目录中,以便所有WP链接都能“自然地”工作。
  2. 将您的站点文件放入site/子文件夹。
  3. 现在,我们将使用.htaccess进行一些魔术操作,并通过在RewriteEngine on之后RewriteEngine on以下代码来重写“站点”链接:

     # do this for all pages of your site: RewriteRule ^services/?$ /site/services/$1 [L,QSA] # now let's try to trick WordPress and swap / with /blog # so users will see /blog in adressbar, but we'll show the WP homepage RewriteRule ^blog/(.*)?$ /$1 [L,QSA] 
  4. 现在我们应该让WP认为/blog实际上是/ ,因此不会引起任何怀疑。 在任何其他代码之前,将以下脚本放入Wordpress的index.php文件中:

     if( $_SERVER['REQUEST_URI'] == '/' ){ // original site homepage requested include('./site/index.php'); exit; } if( trim($_SERVER['REQUEST_URI'], '/') == 'blog' ){ $_SERVER['REQUEST_URI'] = '/'; $_SERVER['QUERY_STRING'] = ''; } 

我没有测试任何东西,但是您应该尝试这些。

方法二

我不是WP的高级用户,但是如果使用@ bingjie2680的答案中的固定链接建议会更改网址,则除了该答案之外,您只能再尝试其他方法。 在文档根目录(不是WP的目录)中向.htaccess添加类似于以下几行的内容:

    RewriteCond %{REQUEST_URI} !^(services|about|or_other_stuff)/?$
    # Rewrite the request to call the WP index.php.
    RewriteRule ^(.*)$ /blog/index.php/$1 [L,QSA]

也许还有其他方法,也许真正的解决方案将这两种方法结合在一起。 继续尝试。

如果您执行以下操作,我认为不会有问题:

  • 无需更改原始站点中的任何内容。
  • 在您的根目录中创建一个名为blog的文件夹,并将所有wordpress文件放在此处。
  • 遵循快速的五个步骤来设置您的博客
  • 您的wordpress网址和网站网址都应该是 yourdomain.com/blog
  • 在“永久链接设置”页面中,选择以下选项:www.example.com/sample-post/
  • 保持菜单像:主页| 博客| 服务| 关于我们| 通过指向yourdomian.com/blog的“博客”与我们联系

现在,如果您单击博客菜单,则您的站点URL将是yourdomian.com/blog,但是如果您单击其中一个帖子说“ hello world”,那么您的URL将是yourdomian.com/hello-world。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM