web-dev-qa-db-fra.com

Comment remplacer "wp-admin" par autre chose sans que la recherche ne remplace le noyau?

par exemple: foobar.com/wp/edit au lieu de foobar.com/wp/wp-admin

Comment je ferais ça?

J'ai essayé d'utiliser ceci dans htaccess mais cela ne fonctionnera pas:

##### ABOVE THIS POINT IS ALREADY INSERTED BY Word PRESS
##### Admin Base Rewrite #####
RewriteCond %{REQUEST_URI} wp-admin/
RewriteCond %{QUERY_STRING} !sercretword
RewriteRule .*\.php [F,L]
RewriteCond %{QUERY_STRING} !secretword
RewriteRule ^secret_room/(.*) wp-admin/$1?%{QUERY_STRING}&secretword [L]
##### End Admin Base Rewrite #####
##### BELOW THIS POINT IS ALREADY INSERTED BY Word PRESS

Il a été créé par Michi Kono. Je ne peux tout simplement pas le faire fonctionner.

Je ne cherche pas à être plus sécurisé par l'obscurité ... C'est plus pour la fonctionnalité. Mon site sera éditable dans le monde entier (un peu comme un wiki) mais uniquement pour les utilisateurs enregistrés. Ils iront dans "/ edit" au lieu de "/ wp-admin" pour éditer ou ajouter du contenu.

Merci pour l'aide!

NOTE: I Did J'ai vu cette question: Puis-je renommer le dossier wp-admin? Mais ça n'a pas de réponse.

REMARQUE: le plug-in Stealth Admin ne semble pas faire l'affaire non plus.

NOTE: J'ai essayé cette solution: Comment rediriger/réécrire toutes les requêtes/wp-login Mais je ne suis pas sûr de savoir où dans le fichier htaccess placer la règle de réécriture par rapport aux règles de wordpress.

2
trusktr

Vous pouvez essayer le Redirection plugin, c’est bien pour cela.

EDIT

Vous pouvez également, par exemple, configurer un sous-domaine qui crée une redirection transparente, comme dans: http://admin.mywebsite.com/ que vous redirigeriez vers votre dossier wp-admin /. Mais ensuite, je pense que les gens verraient toujours le wp-admin/dans tous les liens (en survol pour ex).

1
mike23

En ce qui concerne votre htaccess, placez le code littéralement sur la première ligne avant tout autre commentaire ou code ajouté par wordpress ou d’autres plugins.

Comme Jan l'a mentionné, la réécriture comprend deux parties. Donc, à côté de .htaccess, vous devez changer le filtre admin_url

function custom_admin_url($path) { 
    return str_replace('wp-admin', 'dashboard', $path); 
}
add_filter('admin_url', 'custom_admin_url');
0
Bryan Willis

Changer une URL se compose toujours de deux parties: changer le code qui accepte les URL (pour s'assurer que vous obtenez quelque chose quand vous allez dans example.com/edit), et changer les URL que le code affiche dans le code HTML (un lien vers wp-admin/ sera écrit) comme edit/).

La première partie est la partie facile, et vous pouvez le faire avec les règles de réécriture Apache. De cette façon, vous faites une demande pour example.com/edit comme si c'était pour example.com/wp-admin.

La deuxième partie est la partie la plus difficile et nécessite en effet une recherche et un remplacement globaux, car elle est "codée en dur" dans tous les sens. Les discussions et les tickets Trac Mike a lié dans sa réponse à la question précédente indiquent que les développeurs principaux ne prévoient actuellement pas de changer cela, car ils ne voient pas les avantages. En effet, votre cas d'utilisation pourrait également être traité de manière à ne pas nécessiter l'utilisation de wp-admin (tout déplacer vers le serveur frontal).

0
Jan Fabry