it-swarm.com.de

Anmelde-URL ohne Plugin ändern

Ich möchte die Anmelde-URL meiner Wordpress-Installation außerhalb von /wp-admin.php ändern

Ich beabsichtige dies zu tun und möchte die .htaccess-Datei ändern, um Folgendes hinzuzufügen:

RewriteRule ^login$ http://yourdomain.com/wp-login.php [NC, L]

Soweit ich weiß, können sich Benutzer unter/wp-admin weiterhin über diesen Link anmelden. Ich habe überlegt, eine Art PHP -Umleitung durchzuführen, damit der Benutzer, wenn er/wp-admin eingibt, zur Seite 404 nicht gefunden wechselt.

Was ist der beste Weg, um die Anmelde-URL ohne Verwendung eines Plugins und mit den höchsten Sicherheitsstandards zu ändern?

4
Travis Patron

Es gibt keinen vernünftigen Grund oder eine vernünftige Methode, dies "ohne Plugin" zu tun, da der Code, der zur Ausführung des Auftrags erforderlich ist, in einem Plugin enthalten sein sollte.

Rollen Sie nicht Ihren eigenen Code, sondern verwenden Sie ein bewährtes Plugin, das speziell für den Job entwickelt wurde. Das ist der sichere Weg.

3
Otto

Sie können diesen Code verwenden:

add_action('init','custom_login');

function custom_login(){
 global $pagenow;
 if( 'wp-login.php' == $pagenow && $_GET['action']!="logout") {
  wp_redirect('http://YOURSITE.com/URL');
  exit();
 }
}
0
mcostales84

Über das Ändern der Login-URL habe ich mich schon bei mysel informiert. Es hilft mir, meine Website zu schützen und Gewalt zu verhindern. Sie können es in htaccess ändern. Sie müssen aber auch den Filter hinzufügen, um die alte Anmelde-URL in WordPress zu ersetzen. Beispiel für meine Website: Datei .htaccess:


RewriteRule ^signin(.*) wp-login.php?%{QUERY_STRING}

In Ihrem Design oder benutzerdefinierten Plugin können Sie den Filter hinzufügen, um sicherzustellen, dass WordPress die richtige Anmelde-URL anzeigt.


add_filter( 'login_url', 'my_login_page', 10, 2 );
function my_login_page( $login_url, $redirect ) {
    return str_replace("wp-login.php","signin",$login_url);
}

add_action( 'login_form', 'replace_login_submit_form',1); 
function replace_login_submit_form() {
  $your_content = ob_get_contents();
  $your_content = str_replace("wp-login.php","signin",$your_content);  
  ob_get_clean();
  echo $your_content;
}

Hoffe es kann dir helfen!

0
huy

Dies kann möglich sein, indem Sie eine völlig neue, Ihrer vorhandenen Datei wp-login.php ähnliche Datei erstellen. Schritte müssen folgen:

Vorschlag: Erstellen Sie eine Sicherungskopie der Datei wp-admin.php, bevor Sie die folgenden Anweisungen befolgen.

  • Öffnen Sie Ihr WordPress-Installationsverzeichnis. Wenn es sich um root handelt, suchen Sie nach der Datei wp-login.php
  • Erstellen Sie nun eine neue PHP-Datei und benennen Sie diese als Ihre neue Anmelde-URL. Wenn Sie also Ihre Anmelde-URL www.yoursite.com/iamgaurav anstelle von www.yoursite.com/wp-admin erstellen möchten, erstellen Sie die neue Datei mit dem Namen: iamgaurav.php
  • Kopieren Sie nun alle Codes der vorhandenen wp-login.php-Datei und fügen Sie sie in Ihre neue Datei iamgaurav.php ein
  • Ändern Sie alle vorhandenen Instanzen von wp-login in iamgaurav (einfache Option zum Ersetzen von Dateien durch einen beliebigen Editor).
  • Speichern Sie nun diese Datei und entfernen Sie die ursprüngliche Datei wp-login.php aus dem Stammverzeichnis.

Du bist fertig. Leeren Sie Ihren Cache und überprüfen Sie die Anmeldung mit der neuen URL: www.yoursite.com/iamgaurav

Sie erhalten 404-Fehler, falls jemand versucht, sich über www.yoursite.com/wp-admin anzumelden

Ich hoffe es hilft.

Vielen Dank

0
Gaurav Mishra