web-dev-qa-db-ja.com

どのように私はワードプレスの404処理をスキップするのですか?

私は、ワードプレスのテーマと平行になるように自分のウェブサイトを拡張したいと思います。

例:

私の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
1

ネイティブWordPressのルールは、任意のPHPスクリプトを含む、既存のファイルやディレクトリをすべて無視するように設計されています。これは文字通り、この部分の指令が意味するものです。

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

だから通常の状況下ではWPは決してあなたの要求に関わってはいけません。 Webサーバー設定の別の場所から、他の書き換え規則が干渉している可能性があります。

2
Rarst

IIRC、WordPressサイトでは 'plain'(WPコード以外)PHPコードを実行できません。 WPは、あなたのWPデータベースの中のエントリー(ページ/投稿)への「ポインタ」としてURLを使います。ファイル内のPHPコードはロードまたは実行されません。

カスタマイズした404ファイルを作成したい場合は、子テーマを作成してから、親テーマから404.phpファイルをコピーまたは変更します。子テーマの作成方法に関するグーグル(およびそれらがなぜ重要なのか)。

ページ/投稿にPHPコードを入れることを可能にするプラグインがあります。しかし、あなたの質問に基づいて、最良の解決策はカスタマイズされた404テンプレートです。

**編集**修正されたとおりです。 WP以外のPHPページは、WPベースのサイトに表示できます。もちろん、サイトの「外観」(PHPコードを含むテンプレートを使用する場合)はありませんが、機能します。

私はいつもそれがそうではないと思いました、いくつかの辛辣に記憶された過去の経験に基づいて。

0
Rick Hellewell