如何跳过WordPress的404处理?

时间:2017-11-09 作者:Francesco Pegoraro

我想以一种与wordpress主题平行的方式扩展我的网站。

示例:

我的wordpress网站位于:www.mywebsite.com通过ftp,我添加了一个名为test, 其中有一个php文件test.php

问题是,如果我在url中写入:www.mywebsite.com/test/test.php 它将我重定向到主题的“未找到页面”。

如何停用此行为?

过帐。htaccess:

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

# END WordPress

# # av:php5-engine
AddHandler av-php5 .php

# # av:Toolbar
SetEnv AV_TOOLBAR 1

2 个回复
最合适的回答,由SO网友:Rarst 整理而成

本机WordPress规则旨在忽略任何现有文件和目录,包括任意PHP脚本。这就是指令这一部分的字面含义:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
所以在正常情况下,WP不应该以任何方式参与您的请求。您可能有其他重写规则的干扰,可能来自web服务器配置中的不同位置。

SO网友:Rick Hellewell

IIRC,您不能在WordPress站点上执行“普通”(非WP代码)PHP代码。WP将使用URL作为指向WP数据库中条目(页面/帖子)的“指针”。它不会加载/运行文件中的PHP代码。

如果您想要一个自定义的404文件,那么创建一个子主题,然后复制/修改404。来自父主题的php文件。谷歌上有很多关于如何创建儿童主题(以及为什么它们很重要)的内容。

有一些插件允许您将PHP代码放入页面/帖子中。但是,根据您的问题,最好的解决方案是定制404模板。

**Edit **我接受更正。非WP PHP页面可以显示在基于WP的站点上。当然,它没有任何网站的“外观”(您希望在PHP代码中使用模板),但它确实有效。

我一直认为不会,基于一些模糊的记忆过去的经验。

结束

相关推荐

是否使用HTACCESS重写规则破坏缓存?

我正在努力跟随this tutorial 也就是说,我可以让服务器发送类似文件的样式。css,如果请求的文件是样式。15458888.css,将重写规则放入htaccess文件中。此规则RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.+).(d+).(js|css)$ $1.$3 [L] 所以我在head 标签:<?php $time = filemtime(get_template_directory() .\'/assets