たとえば、いくつかのカスタム php ページを追加する場合は、独自の書き換えを標準の Wordpress 部分の前に追加する必要がありますが、RewriteBase /
.
ここでは、プライベート ディレクトリ内に保存されているカスタム ページを処理できるように、いくつかの書き換えを追加しましたcustom
。
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
# *** START CUSTOM PART ***
RewriteRule ^page1$ /custom/page1.php [L,QSA]
RewriteRule ^page2$ /custom/page2.php [L,QSA]
# *** END CUSTOM PART ***
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
サイトが で利用できる場合http://www.example.com
、カスタム ページには を使用してアクセスでき http://www.example.com/page1
ますhttp://www.example.com/page2
。
書き換えフラグに関するいくつかの言葉[L,QSA]
:
L
- 書き換えが一致した場合は、書き換えプロセスをすぐに停止し、それ以上ルールを適用しないでください。
QSA
- 元のリクエスト URL のクエリ文字列をカスタム ページに追加します。これは、呼び出しhttp://www.example.com/page1?foo=bar&c=1
が内部的に次のように書き換えられることを意味します/custom/page1.php?foo=bar&c=1
ご注意ください:
- WordPress サイトに「page1」という名前のページが既にある場合、このページは書き換えルールに追加されたカスタム ページによって上書きされます。
- これらの Apache httpd ディレクティブは標準であり、Wordpress によって生成され、
Permalink Settings
. カスタムパーツを追加しました。
Permalink Settings
を変更するたび.htaccess
に上書きされ.htaccess
ます。パーミッションを変更してファイルを読み取り専用にした方がよいでしょう。そして、いずれにしても、.htaccess 構成のコピーを保存してください。
一方、Wordpress の URL をより SEO フレンドリーにしたい場合、つまり、URL に.php
ページがなく、完全なクエリ文字列がなく、一意の識別子として投稿/ページ スラッグのみが必要な場合は、次のオプションにアクセスしWordpress Permalink Settings
て選択することができます。Post name
を有効にするPermalink Settings
と、Apache httpd の作業は .htaccess 部分に限定されます。これは、Apache が .htaccess を介してすべて (リクエスト ヘッダーと本文) を index.php ページにリダイレクトし、Wordpress がすべての書き換えを内部的に実装することを意味します。WordPress の構成に関する提案がさらに必要な場合は、 https://wordpress.stackexchange.com/に質問を書き込むことをお勧めします。