web-dev-qa-db-ja.com

.htaccess書き換えルールを使用してサイトにWordPressを挿入する

WordPressでプログラムされているWebサイトにPHPブログを挿入し、includes()を使用して表示するコンテンツを選択します。 URL。

問題は、WordPressをサブディレクトリにインストールすると、rewriteRuleが実行され、ユーザーがWordPressが配置されているサブディレクトリに到達できないことです。

これを解決する1つの方法は、すべてのWordPressコンテンツを含めるようにインクルードをプログラムすることですが、それは非常に難しいと思います(そうではないでしょうか?)。利点:CSSスタイルが保持されます!

私が考えたもう1つの解決策は、WordPressサブディレクトリの書き換えルールを無効にすることでした(可能ですか?どうすればできますか?)。欠点:CSSは保持され、WordPressファイルを変更して再挿入する必要があります。

私が見る3番目の方法は、WordPressをサブディレクトリにインストールすることですが、SEOの最適化のためにこれを使いたくありません。

。htaccessファイル:

\# Activar RewriteEngine
RewriteEngine on

\# When only 1 var is set in the url
RewriteRule ^([a-zA-Z0-9\-]+)/?$ index.php?lang=$1

\# When 2 vars are set in the url
RewriteRule ^([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)?$ index.php?lang=$1&link0=$2

\# When 3 vars are set in the url
RewriteRule ^([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/?$ index.php?lang=$1&link0=$2&link1=$3

\# When 4 vars are set in the url
RewriteRule ^([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/?$ index.php?lang=$1&link0=$2&link1=$3&link2=$4

\# When 5 vars are set in the url
RewriteRule ^([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/?$ index.php?lang=$1&link0=$2&link1=$3&link2=$4&link3=$5
2
user2348684

WordPress以外のWordPressファイルも提供するディレクトリからPHPを実行しようとすると、大きな問題が発生します。私を信じて;私はこれを数年間やりました。 WordPress以外のすべてのリクエストをインターセプトするために、WordPressの上位にある。htaccessにルールを追加します。すべてのコンテンツが/foo-bar-something.phpの形式である場合、それは簡単です。そうでなければ、それは悪夢です。別のディレクトリ/サブディレクトリに置くだけです。

1
Ed Cottrell