2016-12-08 25 views
0

Ich habe eine Website in Wordpress.Wordpress - Ordnungsgemäße Verwaltung benutzerdefinierter Benutzer

Die Funktionalität, die ich brauche, ist so, dass ich "Benutzer" der Website erstellen kann. Diese Benutzer haben keinen Grund, die Wordpress-Seite in irgendeiner Weise zu bearbeiten, und müssen nicht wissen, dass wir sogar die Wordpress-Plattform verwenden.

Diese Benutzer müssen in der Lage sein, ihre Kontaktinformationen zu bearbeiten und ihren eigenen Lebenslauf hochzuladen/anzuzeigen/auszutauschen, indem sie eine Seite verwenden, die ich für sie erstellen werde (nicht das wp-admin-Dashboard). Dieser Lebenslauf wird PDFs und WordDocs sein.

Zuerst dachte ich, ich würde nur die eingebauten Wordpress-Benutzer und Rollen verwenden, die Wordpress anbietet. Ich bin mir jedoch nicht sicher, wie ich diesem Benutzer Lebensläufe anhängen und diesen Benutzer den eigenen Lebenslauf bearbeiten lassen würde. Ich weiß, dass ich den 'user_contactmethods' Hook benutzen kann, um grundlegende Felder anzuhängen. Allerdings würde ich versuchen, einen Link zu einer Datei, die Wordpress hostet, und in der Lage sein, diese Datei nach einem Laune, in PHP zu ersetzen. Außerdem möchte ich verhindern, dass sie jemals das Wordpress-Dashboard oder die Bearbeitungswerkzeuge verwenden.

Als nächstes dachte ich, ich könnte einen benutzerdefinierten Beitragstyp für einen 'SiteUser' erstellen. Dies würde es einfacher machen, ein PDF/WordDoc zu verwalten, das an diesen Post-Typ angehängt ist. Außerdem hätte dieser Benutzer keine Möglichkeit, auf das Wordpress-Zeug zuzugreifen. Bevor ich das tue, wollte ich hier fragen, ob das wirklich der richtige Weg ist.

Diese Lösung fühlt sich hacky.

Kann ich einige Lösungsvorschläge für dieses Problem bekommen, die als "der richtige Weg" angesehen werden könnten?

Danke

+0

Sie wahrscheinlich auf einem Haufen anders aussehen können Plugins und dann versuchen, sie zusammen zu stampfen, aber ich finde, dass Sie immer zusätzliche Sachen oder Sachen haben werden, die das nicht erfüllen, was Ihre kundenspezifische Lösung braucht. Die Methode, die ich unten gepostet habe, ist eine gute Mischung aus Code und Anpassung, ohne zu viel zu tun. – vico

Antwort

2

Hier ist eine grobe Vorstellung davon, was Sie suchen.

Schritt 1

Erstellen Sie die Benutzerrolle für diese neuen Benutzer

Schritt 2

die Erlaubnis für sie einstellen und Back-End-Zugriff deaktivieren und alle Zugriffe von diesen Rollen zu einem Redirect benutzerdefinierte Seite/Konto/

Schritt 3

Verwenden Sie das Advance benutzerdefinierte Felder-Plugin, um einige benutzerdefinierte Felder im Benutzer-Meta zu erstellen. (Text, Datei, Bild)

Schritt 4

einige Login Logik/Form und Link-Nehmen auf eine/Konto/edit-info/custom-Seite mit der ACF-Frontend Form. https://www.advancedcustomfields.com/resources/create-a-front-end-form/

Schritt 5

verwenden, um diese Informationen zu dem/Konto/Seite

Optional

Mit Schwere Formen irgendwo angezeigt werden, anstatt eine bessere Kontrolle Benutzerdateneingabe gibt zu verwalten, sondern erfordert mehr Codierung und eine bessere Benutzererfahrung.

Front-end Admin Schritte

  1. Wiederholen Sie Schritt 1-2

  2. Loop-Site-Benutzer und in der Liste und ihre benutzerdefinierten Feld Dateien haben eine Schaltfläche, die eine Schwerkraft-Form mit dem Benutzer öffnet Das ID-Textfeld ist bereits ausgefüllt und ausgeblendet und verfügt über ein Datei-Uploader-Element.

  3. hinzufügen Backend-Haken nach der Validierung direkt den Benutzer meta ersetzen den Dateipfad oder ID (aber Sie Wahl, um es zu speichern, in Voraus benutzerdefinierte Felder), die

+0

OMG, ich habe ACF für immer verwendet und nie bemerkt, dass Sie einfach Felder direkt an Benutzer anhängen können. Du hast es gesagt, ich ging und schaute auf mein Plugin und bei Gott, da ist es. LOL Danke, Mann! – Captainlonate

Verwandte Themen