Ersetzen Sie die Seite user-edit.php im WordPress-Adminbereich

Lesezeit: 2 Minuten

Ich muss die Seitenvorlage ersetzen, die für die user-edit.php-Ansicht in der WordPress-Admin-Oberfläche verwendet wird.

Ich möchte keine Kerndateien ändern, möchte jedoch meine eigene user-edit.php erstellen, die stattdessen aufgerufen wird.

Bisher habe ich versucht, die Datei user-edit.php zu erstellen und in meinem Child-Theme zu platzieren.

Ist dies mit einem benutzerdefinierten Plugin möglich?

Scotts Benutzeravatar
Scott

Die WordPress-Admin-Seiten verwenden Vorlagen nicht wirklich auf die gleiche Weise wie Themen. Es gibt also nicht wirklich eine Vorlage zu ersetzen.

Davon abgesehen, hier sind Ihre Optionen, um das Standard-WordPress zu ersetzen user-edit.php Seite.

  1. [brute force method] direkt den Kern ersetzen wp-admin/user-edit.php Datei mit Ihrer eigenen. Ich weiß, dass Sie bereits gesagt haben, dass Sie Kerndateien nicht ersetzen möchten. Ich liste das nur für andere auf, die hier auftauchen. Offensichtlich ist dies nicht ideal, da Ihre Datei bei jedem Update von WordPress überschrieben würde.

  2. [server redirect method] Sie könnten den entsprechenden Eintrag auf Ihrer Website hinzufügen .htaccess Datei zum Umleiten von Anrufen https://yourdomain.tld/wp-admin/user-edit.php zu Ihrer neuen Seite/Datei. Auch nicht ideal, denn wenn Ihre Website jemals zu einem neuen Design wechselt, das nicht über die Ersatzdatei verfügt, würde dieser Umleitungslink beschädigt werden.

  3. [additive method] Lassen Sie das vorhandene Kern-/Standardbenutzermenü in Ruhe und fügen Sie einfach Ihr eigenes Admin-Menü hinzu (via add_menu_page), um Ihre neue(n) Seite(n) einzuschließen. Dann wissen Sie nur, dass Sie nur dieses neue Menü anstelle des Benutzermenüs verwenden müssen. Besser, aber auch nicht ideal, da alle Links auf anderen Admin-Seiten, die auf user-edit.php verweisen, immer noch dorthin verweisen und Admin-Benutzer zur alten/Kernseite führen würden.

  4. [php intercept method] Anrufe abfangen wp-admin/user-edit.php in den PHP-Code Ihres Themes und laden Sie stattdessen Ihre Ersatzdatei. Dies ist wahrscheinlich die beste Methode, wenn auch nicht die einfachste. Und Sie müssen sicherstellen, dass Ihre Ersatzseite alle Plugins weiterhin ordnungsgemäß funktionieren lässt, die möglicherweise auch die Filter und Hooks der Benutzerbearbeitungsseite verwenden.

Um #4 zu erreichen [php intercept]:

Das erste, was der Kern user-edit.php Datei lädt wp-admin/admin.php. Diese Datei lädt alle relevanten Admin-Sachen und übergibt schließlich die Kontrolle zurück an user-edit.php. Aber kurz BEVOR es das tut, löst es die Aktion aus "load-user-edit.php"

Verwenden Sie also in der Datei functions.php Ihres Themes eine Funktion wie diese, um die Anfrage abzufangen und zu Ihrer Datei umzuleiten:

function scottfive_override_user_edit(){
    require_once( get_template_directory() . '/myadminfiles/user-edit-replacement.php' );
    die();
}
add_action( 'load-user-edit.php', 'scottfive_override_user_edit', 1 );

Beachten Sie, dass diese Methode die gesamte Datei mit all ihrer Funktionalität und Sicherheit ersetzt. Ich schlage vor, einen Blick auf den ursprünglichen Kern zu werfen user-edit.php und duplizieren Sie den Authentifizierungs-/Autorisierungscode, um sicherzustellen, dass Ihre Datei mindestens so sicher ist wie das Original.

Viel Spaß beim Codieren! 😀

1435110cookie-checkErsetzen Sie die Seite user-edit.php im WordPress-Adminbereich

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy