Plugin Programmierung: Wie setze ich meine Idee um?

  • Hi zusammen,

    ich arbeite schon lange mit Bootstrap und bin hauptsächlich Webdesigner und Softwareentwickler.
    Nun will ich mich damit befassen Plugins für Wordpress zu entwickeln, um eine meiner Ideen umzusetzen.

    Das Ziel meines Plugins soll sein:
    Jeder Benutzer hat Zugriff auf eine Seite (nennen wir sie "Extra-Einstellungen"). Jeder Benutzer hat hier auch unterschiedliche Daten.
    Bernd kann auf der Seite bspw. seinen Instagram-Namen auf bernd.meier123 setzen. Sobald er die Seite "Extra-Einstellungen" aufruft ist dieses Feld dann auch mit dem Wert gefüllt und kann von ihm bearbeitet und am Seitenende durch einen Button gespeichert werden. Textareas, also mehrzeilige Eingaben sollen auch möglich sein.

    Optional:
    Diese Extra-Einstellungsfelder wie z. B. Instagram-Name sollen auf einem anderen MySQL-Server abgespeichert werden. Wie stelle ich hier eine Verbindung her und speichere/lade die Werte auf die Wordpress Seite? Würde das mit PHP schon hinkriegen, stelle mir aber die Frage in welche Datei bzw. welchen Hook ich das programmieren muss.

    Es würde mir viel helfen, wenn ihr mir verraten könntet mit welchen Themen ich mich für dieses Beispiel befassen muss.
    Danke schonmal :)

    Beste Grüße
    wp_dev

    Einmal editiert, zuletzt von wp_dev (15. Januar 2018 um 14:03)

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Hi, das ist schon mal echt hilfreich, vielen Dank! Wie ich sehe habe ich diese Felder dann aber nur im Wordpress Dashboard, wenn ich User bearbeite.
    Ich kann aus den Codes/der Plugin-Doku allerdings noch nicht rauslesen, wie jeder User die Felder für sich editieren kann :/

    Ich habe WooCommerce installiert, dieses Plugin hat eine eigene "Mein Konto"-Seite mit Dashboard. Ich bekomme es auch hin zu programmieren, dasss bei diesem Dashboard eine neue Seite "Extra-Einstellungen" angezeigt wird. Der User soll hier dann aber viele Felder haben die er für sein Profil bearbeiten kann.

  • Wie ich sehe habe ich diese Felder dann aber nur im Wordpress Dashboard, wenn ich User bearbeite.

    Der User sieht die Felder und kann sie bearbeiten, wenn er sich anmeldet und in sein Profil geht.

    Wie das auf extra WooCommerce-Seiten geht, darf dann gern ein WooCommerce-Experte beantworten.

  • Ok so langsam verstehe ichs.
    Aber dann muss ich jetzt die Frage stellen, weil ichs einfach nicht finde: Wie komme ich als eingeloggter User auf meiner Website auf mein Profil?

    Muss ich dafür ein Plugin installieren?

  • Oh hmmmm.. ok, ich meinte sowas in der Art: Auf Facebook gehst du als User in die Einstellungen und änderst dein Geburtsdatum oder Lieblingsbücher. Wie kann ich ein solches Userprofil mit Custom Feldern machen, bei dem der User ein Dashboard hat?
    Als Admin habe ich ja nur das normale Wordpress-Admin-Dashboard

  • Das ist das WooCommerce Dashboard:
    https://pasteboard.co/H33j2E4o.png

    Dies ist ein einfache Übersicht nach einem Login bei wooCommerce.

    https://docs.woocommerce.com/document/template-structure/

    Die Gestaltung kannst einfach überschreiben, wenn du ein yourtheme/woocommerce/auth/form-grant-access.php.

    erstellt und wildes einträgst.

    woocommerce ist bereits ein Plugin für WordPress - und nach deiner Beschreibng möchtest du "nur" eine Erweiterung für wocommerce erstellen.

    Woocommerce findest du auf GitHub
    https://github.com/woocommerce

    Membership Pluign mit User profile
    https://de.wordpress.org/plugins/ultimate-member/

    gibt es bereits...

    Mit offenen Augen träumen

  • Das ist das WooCommerce Dashboard:
    https://pasteboard.co/H33j2E4o.png
    Ist das gleichzeitig das normale Dashboard? Das Dashboard schaut als admin und auch als normaler Benutzer gleich aus.

    In Woocommerce gibt es auch entsprechende Hooks, um im Kundenbereich einen Tab hinzuzufügen:
    https://businessbloomer.com/woocommerce-ad…b-account-page/

    Wenn ich dich richtig verstanden habe, ist das doch das, wonach du suchst?

  • r23
    danielgoehr
    Vielen Dank für die hilfreichen Links, das hilft mir schon einmal sehr gut weiter!
    Im WooCommerce Dashboard werde ich nun die Seite "Extras" anlegen. Jetzt habe ich nur noch die Herausforderung:
    Wenn der User auf diese Seite geht, sollen dort Felder sein (wie bereits erwähnt ähnlich wie bei Facebook "Lieblingsfilme:", "Zusatzfunktionen aktiveren:Ja/Nein", ..). Diese Felder müssen dann mit dem aktuellen Wert, den er eingetragen hat angezeigt werden.
    Bspw.
    <label>Lieblingsfilme</label>
    <input type="text" id="favmovies" value="Jumanji, Bad Moms 2"/>

    Diesen Input sollte er bearbeiten können und mit einem Button abspeichern.
    Das kriege ich mit den genannten Plugins leider nicht so möglich, und würde das auch etwas lieber sogar selber programmieren :/

  • Na ja, Du machst das ungefähr so:

    add_action( 'woocommerce_account_edit-account_endpoint', 'my_custom_endpoint_content' );

    Also wenn der Account editiert wird, nutzt Du den woocommerce_account_edit-account_endpoint - hook.

    Und dann fragst Du in der function my_custom_endpoint_content ab, ob es $_POST-Daten gibt.
    Und wenn ja, aktualisierst Du die User-Meta-Daten mit den eingegebenen Daten.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!