web-dev-qa-db-fra.com

Insertion de WordPress dans un site doté de la règle de réécriture .htaccess

Je veux insérer un blog WordPress sur un site Web programmé dans PHP et qui utilise includes () pour sélectionner le contenu à afficher, et qui utilise .htaccess Rewrite Rule pour se mettre à l'aise. URL.

Le problème est que lors de l'installation de WordPress dans un sous-répertoire, la commande rewriteRule est exécutée et ne permet pas à l'utilisateur d'accéder au sous-répertoire où se trouve WordPress.

Une façon de résoudre ce problème pourrait être d’essayer de programmer les includes pour inclure tout le contenu WordPress, mais je pense que ce serait assez difficile (non?). Avantage: style CSS préservé!

L’autre solution à laquelle je pensais était de désactiver la règle de réécriture du sous-répertoire WordPress (est-ce possible? Comment peut-on le faire?). Inconvénient: nod préservé CSS, doit être réinséré en modifiant les fichiers WordPress.

La troisième façon que je vois est d'installer WordPress dans un sous-répertoire, bien que je ne veuille pas l'utiliser à cause de l'optimisation du référencement.

. htaccess fichier:

\# 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

Vous allez avoir d’énormes problèmes si vous essayez d’exécuter WordPress à partir d’un répertoire qui contient également des fichiers autres que WordPress PHP. Croyez-moi; Je l'ai fait pendant plusieurs années. Vous devrez ajouter une règle à . Htaccess, supérieure à celle de WordPress, pour intercepter chaque requête qui ne devrait pas aller à WordPress. Si tout le contenu est de la forme /foo-bar-something.php, c'est facile. Sinon, c'est un cauchemar. Il suffit de le placer dans un répertoire/sous-répertoire différent.

1
Ed Cottrell