1. Herzlich willkommen bei WPDE.org, dem grössten und ältesten deutschsprachigen Community-Forum rund um das Thema WordPress. Du musst angemeldet oder registriert sein, um Beiträge verfassen zu können.
    Information ausblenden

WP 5.6 Plugin ausgabe 2 mal

Dieses Thema im Forum "Plugins und Widgets" wurde erstellt von headloose, 8. Februar 2021.

  1. headloose

    headloose Well-Known Member

    Registriert seit:
    15. Mai 2017
    Beiträge:
    76
    Zustimmungen:
    0
    Hallo zusammen,

    nachdem Ihr mir ja ziemlich geholfen habt, was die Erstellung eines Plugin angeht, bin ich auch schon fast ziemleich weit gekommen.

    Ich habe nun per shortcode meine SQL Daten eingebunden. Allerdings wenn ich in Elementor gehe erschein die Table zweimal. Warum das so ist weiß ich nicht. Habt Ihr da einen Tipp.

    Momentan habe ich alles noch auf localhost. Was habe ich falsch gemacht?
     

    Anhänge:

  2. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    8.593
    Zustimmungen:
    979
    • Poste den Shortcode Code (mit dem kleinen [+] Symbol im Forum Editor), gibt er direkt Dinge aus oder alles per "return" am Ende?
    • Wurde der Code zusätzlich auch in ein Seitentemplate eingebaut?
    • Wie genau wird der Shortcode in Elementor eingefügt / aufgerufen, sieht man im Screenshot nicht.
     
  3. headloose

    headloose Well-Known Member

    Registriert seit:
    15. Mai 2017
    Beiträge:
    76
    Zustimmungen:
    0
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Ist in einer Seite eingebunden.

    So sieht die Datei aus: (Ausschnitt)
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Hier noch die Einbindung und die Plugin Struktur.

    Der shortcode steht in den einzelnen php dateien und zusätzlich in der caledar.php
     

    Anhänge:

  4. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    8.593
    Zustimmungen:
    979
    • Das add_shortcode(...) gehört nur in das Plugin, sonst nirgendwohin.
    • Wenn der Shortcode [nmevents] wie gezeigt in Elementor eingefügt wird, muss/darf er natürlich nicht zusätzlich anderen einzelnen PHP Dateien eingefügt und aufgerufen werden.
    • Aus dem geposteten Codeteil des Plugins geht leider nicht hervor ob Dinge direkt ausgegeben werden oder am Ende per return zurück, so ist schwer Hilfe möglich.
     
  5. headloose

    headloose Well-Known Member

    Registriert seit:
    15. Mai 2017
    Beiträge:
    76
    Zustimmungen:
    0
    Hm alles klar,

    hier mal der komplette code.
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Elementro bringt mir auch beim speichern "Serverfehler" Also muss im Code auch noch etwas fehlerhaft sein.
     
  6. headloose

    headloose Well-Known Member

    Registriert seit:
    15. Mai 2017
    Beiträge:
    76
    Zustimmungen:
    0
    ... und so sieht die calendar.php aus.

    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
     
  7. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    8.593
    Zustimmungen:
    979
    Der Shortcode gibt Inhalte direkt per echo aus (falsch) statt nur am Ende des Shortcodes per return $ausgabe; o.ä., eine Rückgabe am Ende des Shortcodes fehlt bei Dir völlig. Siehe auch Beispiele.

    Die leeren return; am Ende der Dateien sind überflüssig / falsch.

    Ob sonstige inhaltliche Fehler vorliegen, musst Du selbst anhand Deiner PHP Error Logs ermitteln. Den Code sehe ich nicht weiter an.
     
  8. headloose

    headloose Well-Known Member

    Registriert seit:
    15. Mai 2017
    Beiträge:
    76
    Zustimmungen:
    0
    ok habe ich verstanden. Das heißt ich muss die Datenbankausgabe in eine variable schreiben. Ab wo? und wie?
     
  9. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    8.593
    Zustimmungen:
    979
    Jegliche Ausgaben eines Shortcodes schreibt man in eine Variable und gibt diese am Ende zurück, siehe auch Beispiele.

    Alternativ verwendet man am Beginn des Shortcodes ob_start(); und am Ende return ob_get_clean(); ähnlich wie hier.
     
  10. headloose

    headloose Well-Known Member

    Registriert seit:
    15. Mai 2017
    Beiträge:
    76
    Zustimmungen:
    0
    Danke, jetzt bin ich wieder einen Schritt weiter und schlauer.

    Jetzt muss ich noch auf Fehlersuche gehen
     
  11. r23

    r23 Well-Known Member

    Registriert seit:
    9. Dezember 2006
    Beiträge:
    5.393
    Zustimmungen:
    188
    hier fehlt ein

    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    ich würde auch immer gekürzte Scripte verwenden..
     
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden