Support » Allgemeine Fragen » search form via http api

  • Gelöst timholz

    (@timholz)


    Hallo
    Ich habe ein Plugin gemacht, welches via http api Produkte von einer externen Datenbank in WordPress > Woocommerce importiert (mittels application/json). Das funktioniert soweit gut aus dem Backend heraus.
    Jetzt versuche ich das gleiche für das Frontend. Also ein Formular, das den Such-Begriff als Variable an den http api request weitergibt, und dann die Antwort auf der Seite ausgibt und in woocommerce importiert (Wie eine Standard WordPress Suche). Ich bin mir nicht sicher, ob das überhaupt möglich ist und wie ich das bewerkstelligen kann.
    Hat jemand von euch diesbezüglich Erfahrung und kann mir einen Tip geben?
    Besten Dank für euer Interesse.
    theo

    • Dieses Thema wurde geändert vor 4 Jahre, 7 Monaten von timholz.
Ansicht von 15 Antworten - 1 bis 15 (von insgesamt 15)
  • Wo genau liegt das Problem?

    Thread-Ersteller timholz

    (@timholz)

    Hi
    Sorry für die unklare Beschreibung.
    Das Problem lag daran, dass ich keine Ahnung habe, wie sowas gemacht werden kann.

    Mittlerweile habe ich ein wenig recherchiert und verstanden, dass dies vermutlich mit Werkzeugen wie Meteor und angular js bewerkstelligt werden kann.

    Du kannst das auch mit jquery lösen 😉

    Thread-Ersteller timholz

    (@timholz)

    Ok, Danke für den Tipp. Da muss ich mich zuerst einmal schlau machen. Kennst du ein Beispiel oder sonst irgendwelche Quellen…?

    Eigentlich brauchst du nicht mal JavaScript.
    Du machst doch den api request auch aus php heraus, genauso wie im Backend.
    Der einzige unterschied ist die variable, die du aus einem Formular übernimmst.
    Wenn du das im Backend hinbekommen hast, dürfte es im Frontend auch kein Problem sein.

    Thread-Ersteller timholz

    (@timholz)

    Ok, daran hab ich auch schon gedacht. Den Input Wert in der Datenbank zwischenspeichern und dann in die request-url einbinden, analog der Backend Methode. Muss ich mal testen. Vielen Dank für dein Feedback.

    Eigentlich müsstest du den Wert nicht mal zwischenspeichern, aber vielleicht verstehe ich auch nicht genau, was du vorhast und wie die Abläufe sind.
    Viel Erfolg jedenfalls.

    Thread-Ersteller timholz

    (@timholz)

    Das Ziel ist, dass User im Frontend Bücher in einem Katalog, der über http api erreicht wird, suchen können und das das Suchresultat angezeigt wird, und in WordPress > Woocommerce importiert wird.
    Der Ablauf: Der Input Suchbegriff wird an eine Variable in der url übergeben und ausgewertet:

    $url = 'https://beispiel.de/api/v1/product?search=ti=' . $suchbegriff;
     $response = wp_remote_get($url, $headers);

    Das wollte ich mit einem Formular im Frontend bewerkstelligen.

    Ok, du kannst doch einfach den $suchbegriff aus den Formulardaten verwenden:

    $suchbegriff = $_POST['suchbegriff'];
    $url = 'https://beispiel.de/api/v1/product?search=ti=' . $suchbegriff;
     $response = wp_remote_get($url, $headers);
    Thread-Ersteller timholz

    (@timholz)

    Ok, danke für diesen Hinweis. Ich bin leider noch ein ziemliches Greenhorn in diesem Bereich.
    Aber das werde ich auf jeden Fall ausprobieren.

    Ja, probier es mal, wüsste nicht, warum es nicht funktionieren sollte 😉

    Thread-Ersteller timholz

    (@timholz)

    Vielen Dank für deine Hilfe.
    theo

    Wobei das für den Produktiveinsatz noch gesichert werden sollte:
    https://codex.wordpress.org/Validating_Sanitizing_and_Escaping_User_Data

    Gruß, Torsten

    Thread-Ersteller timholz

    (@timholz)

    Hallo Torsten, Vielen Dank für den Hinweis.
    theo

    Thread-Ersteller timholz

    (@timholz)

    Hallo,
    Land in Sicht. Das klappt gut.
    Herzlichen Dank für eure Hilfe.
    theo

Ansicht von 15 Antworten - 1 bis 15 (von insgesamt 15)
  • Das Thema „search form via http api“ ist für neue Antworten geschlossen.