Display_name in SQL Spalte wp_comments

  • Hey Leute...ich hoffe ich bin hier richtig. Ist ja auch irgendwie eine Wordpress frage :D
    Ich würde gerne in der SQL den Wert des Display_name in der Spalte wp_comments einfügen. Ich weiß zwar wie ich das mache, aber dies alles ist ohne Daten...sozusagen sollen sich die Werte dort ändern, sobald der Wert sich in der Spalte wp_users auch ändern, weil z.B. jemand seinen Namen geändert hat.

    Anstatt also immer den Author_name zu erfahren, der sich ja leider nicht ändert, möchte ich den jeweiligen Display_name erfahren.
    Hoffe jemand kann mir helfen

    Danke

    • 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

  • Um display namen ausgeben zu können brauchst du doch nicht in der Datenbank herumpfuschen ;))

    Dazu müsstest du dein Template anpassen...

    In der Regel sollte der öffentliche name ausgeben werden
    <?php the_author(); ?

  • [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

  • Okay...aber wie in schon beschrieben...da wird nur der Author_name angezeigt, nciht aber der Display_name des users....und der Author_name kann nicht geändert werden, außer in der Datenbank

  • Hört sich gut an...wie mache ich das???

    Du nimmst den verlinkten Hook. Damit kannst du quasi eine Funktion ausführen, sobald jemand sein Profil aktualisiert.

    In dieser Funktion suchst du dann nach allen Einträgen in der Tabelle "wp_comments", bei der der alte Name in der Spalte "comment_author" steht und ersetzt ihn durch den neuen Namen.
    Idealerweise prüfst du vorher nochmal, ob sich der Name des Users überhaupt geändert hat. Wenn der gleich geblieben ist, kannst du dir das Ausführen der Funktion ja sparen.

    Die Änderungen in der Datenbank machst du am besten mit der wpdb-Klasse:
    https://codex.wordpress.org/Class_Reference/wpdb

  • In dieser Funktion suchst du dann nach allen Einträgen in der Tabelle "wp_comments", bei der der alte Name in der Spalte "comment_author" steht und ersetzt ihn durch den neuen Namen.


    Ggf. daran denken, dass Kommentare von verschiedenen Personen durchaus den gleichen Namen haben könnten...

  • Okay bin jetzt nciht wirklich vertraut mit code schreiben ect. könntest du mir vielleicht einen Ansatz zeigen bzw. wo füge ich das ein?? Danke

    Einen fertigen Code habe ich dafür leider auch nicht parat. Beispiele findest du aber in der Dokumentation.

    Der Code kommt entweder in die functions.php deines Child-Themes oder in ein (eigenes) Plugin.

    Das Ganze ist leider nicht ganz trivial. Vor allem, wenn man den (berechtigten) Einwand von b3317133 berücksichtigt. In dem Fall müsste man z.B. die User ID zum jeweiligen Kommentar mit abspeichern und sich darüber dann den Display Name "holen".

    Wenn du es selbst machen willst, wirst du nicht drumherum kommen, dich ein bisschen mit der Materie auseinanderzusetzen.

Jetzt mitmachen!

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