• Gelöst seimax

    (@seimax)


    Halle Freunde,

    ich würde gerne bei meiner WordPress Webseite mittels der Post-ID abfragen, wie der Beitrag heißt und wer der Autor ist. Mit Zapier habe ich das schon probiert, doch leider kann man hier Posts nicht mit ID, sondern nur mit Namen abfragen.

    Habt ihr hier eine Idee? Schon jetzt danke ich herzlich für eure Hilf!

Ansicht von 10 Antworten – 1 bis 10 (von insgesamt 10)
  • Moderator Bego Mario Garde

    (@pixolin)

    Moderator (nicht mehr aktiv)

    Das ist ein wenig aus dem Kontext gerissen.

    Wo möchtest du das denn ausgeben?
    Im Browser? Dann könntest du REACT nutzen. Möchtest du zum Beispiel die Daten des Blog-Beitrags Abmahnwelle, Google Fonts, WordPress-Standard-Themes und WordPress 6.2 anhand der ID abrufen, kannst du den Link https://de.wordpress.org/wp-json/wp/v2/posts/5466 verwenden.

    Ansonsten bietet dir WordPress einige Funktionen, um Beiträge und Seiten in einem Theme oder Plugin auszugeben. get_post( $ID ) liefert dir ein PHP-Objekt mit allen möglichen Daten des Posts.

    <?php
    $beitrag_42 = get_post( 42 );
    echo "Autor: " . $beitrag_42->post_author;
    echo "Titel: " . $beitrag_42->post_title;

    vgl. get_post()

    Thread-Starter seimax

    (@seimax)

    Am coolsten wäre es, wenn ich einfach einen Webhook mit der ID auslöse und den Artikelnamen, sowie den des Autors als Antwort bekomme.

    Moderator Bego Mario Garde

    (@pixolin)

    Moderator (nicht mehr aktiv)

    Moderator Michi91

    (@michi91)

    Die folgende Funktion würde einen Endpunkt bereitstellen, der den Titel und den Autorennamen eines Beitrags anhand seiner ID zurückgibt:
    
    php
    
    function get_post_info_by_id( $data ) {
    // Post-ID aus den Daten holen
    $post_id = $data['id']; // Post-Titel und Autorname abrufen
    $post = get_post( $post_id );
    $title = $post->post_title;
    $author_name = get_the_author_meta( 'display_name', $post->post_author ); // Daten als JSON zurückgeben
    return array(
    'title' => $title,
    'author' => $author_name
    );
    } // Den Endpunkt registrieren
    add_action( 'rest_api_init', function () {
    register_rest_route( 'myplugin/v1', '/post/(?P\d+)', array(
    'methods' => 'GET',
    'callback' => 'get_post_info_by_id',
    ) );
    } ); In diesem Beispiel wird der Endpunkt unter der URL http://example.com/wp-json/myplugin/v1/post/{id} verfügbar sein, wobei {id} die ID des gewünschten Beitrags ist. Wenn der Endpunkt aufgerufen wird, ruft er den Post-Titel und den Autorname ab und gibt sie als JSON zurück.

    Credits to chatgpt 😉

    Moderator Bego Mario Garde

    (@pixolin)

    Moderator (nicht mehr aktiv)

    Ich verstehe die Antwort nicht. Es gibt doch bereits die Möglichkeit, den Post mit den gewünschten Informationen per REST API abzurufen und darauf hatte ich auch hingewiesen. Wieso dann eine weitere REST Route einrichten? Auf get_post() hatte ich auch hingewiesen, wobei wir immer noch nicht wissen, wozu das Ganze eingesetzt werden soll.

    Hey @seimax – WP Webhooks kann dir da tatsächlich ziemlich einfach helfen.
    Schau dir dazu am besten folgenden Endpunkt genauer an: https://wp-webhooks.com/integrations/wordpress/actions/get_post/

    Dieser erlaubt es dir einen Post anhand der Post-ID aus der Datenbank zu laden und diesen in deinem Request zu übergeben.
    Damit kannst du einfach einen Request innerhalb Zapier starten mit der “Webhooks by Zapier”-App.

    Lass mich gerne wissen falls du dazu weitere Fragen hast. 🙂

    Moderator Michi91

    (@michi91)

    https://de.wordpress.org/wp-json/wp/v2/posts/55466 wäre auch mein erster Anlaufpunkt gewesen, allerdings wird dort nur die Autoren id geliefert, weshalb ich zu einem eigenen Endpunkt tendiere.

    Gut möglich dass dem threadstarter die Autoren id schon reicht, falls nicht wollte ich mit meiner Antwort eine weitere Möglichkeit aufzeigen 🙂

    Thread-Starter seimax

    (@seimax)

    Sehr geehrte Teilnehmerinnen und Teilnehmer dieses Forums,

    ich möchte Ihnen heute meine Anerkennung und meinen Dank für Ihre aktive Beteiligung und Unterstützung aussprechen. In diesem Forum geht es darum, Wissen zu teilen, Fragen zu stellen und Antworten zu finden – und Sie alle haben dazu beigetragen, dass dieses Ziel erreicht wird.

    Am besten war der Tipp von @michi91. Habe das jetzt so als Webhook bei Zapier hinterlegt und komme an alle Daten die ich will. Danke!

    Ich bin beeindruckt von Ihrem Engagement. Danke!

    Thread-Starter seimax

    (@seimax)

    Danke!

    Moderator Bego Mario Garde

    (@pixolin)

    Moderator (nicht mehr aktiv)

    Wir tauschen uns zwar sonst in einem weniger förmlichen Ton aus (respektvoll mit „du“), aber freut mich, wenn wir helfen konnten.

    Der Sonderpunkt geht an @michi91 – auch wegen der Erklärung der Antwort. Dankeschön auch von mir.

Ansicht von 10 Antworten – 1 bis 10 (von insgesamt 10)
  • Das Thema „WordPress Post-ID Abfrage“ ist für neue Antworten geschlossen.