Feature für Feature neigt WordPress dazu, den Mantel des Blogging-Systems auf den des Anwendungsentwicklungssystems zu übertragen. Der erste spürbare Schritt in Richtung dieser Änderung war die Einführung benutzerdefinierte Beitragstypen in der 2.9-Version.

Heute geht die Transformation mit der Ankunft von weiter WordPress REST API.

In diesem Tutorial werde ich erklären, was die WordPress REST-API ist, und Ihnen zeigen, wie man sie verwendet.

Aber vorher, wenn Sie WordPress Discover noch nie installiert haben So installieren Sie eine Wordpress-Blog in 7 Schritten et Wie finden, zu installieren und ein Wordpress-Theme auf Ihrem Blog aktivieren 

Dann lassen Sie uns zurückgehen, warum wir hier sind

Was ist die REST-API?

Um es einfach auszudrücken: Mit der WordPress-REST-API können Sie mit dem Kern von WordPress interagieren, ohne die grafische Oberfläche zu durchlaufen. Dies bedeutet eine Entkopplung von Kernel und GUI. Mit dieser API können Sie beispielsweise einen neuen Artikel erstellen, ohne auf die zugreifen zu müssen Armaturenbrett. Die REST-API wird in den Kernel aufgenommen, wenn Version 4.4 bis Dezember veröffentlicht wird.

Aufgrund der Art des Themas dieses Tutorials sind gute Kenntnisse der PHP-Sprache und von WordPress erforderlich.

Was brauchen wir für dieses Tutorial?

Um mit der REST-API zu beginnen, benötigen Sie das Plugin REST API sowie die neueste Version von WordPress. Sie haben es ? Wenn nicht, warumKenntnisse der WordPress-HTTP-API sind auch gute Unternehmen für Ferngespräche.

Entdecken Sie, indem Sie auf diesen Link klicken Wie man ein Plugin auf WordPress installiert (hinzufügt)

Als Projekt für dieses Tutorial wir erstellt eine lokale Installation von WordPress Von hier aus werden wir Artikel von unserer Website über die REST-API abrufen. Stellen Sie sicher, dass Sie das REST-API-Plugin auf der Produktionswebsite installiert und aktiviert haben.

Erstellen Sie jetzt eine Widget in Ihrer lokalen Installation. Hier ist der Basiscode:

/**
 * Plugin Name: REST API Widget Essai
 * Plugin URI: http://le-site-de-votre-widget-ici.com
 * Description: Ce widget récupère des articles à l'aide de l'API REST
 * Version: 1.0
 * Author: Votre nom
 * Author URI: http://votre-site.com
 */

class Mes_Articles_Widget extends WP_Widget {

    public function __construct() {
        $widget_details = array(
            'classname' => 'widget-essai-rest-api',
            'description' => 'Un widget qui récupère des articles à l'aide de l'API REST depuis un autre site'
        );

        parent::__construct( 'widget-essai-rest-api', 'REST API Widget Essai', $widget_details );

    }

    public function form( $instance ) {
        $title = ( !empty( $instance['title'] ) ) ? $instance['title'] : '';
        ?>

        <p>
            <label for="<?php echo $this->get_field_name( 'title' ); ?>">Title: </label>
            <input class="widefat" id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" type="text" value="<?php echo esc_attr( $title ); ?>" />
        </p>

        <?php
    }
    public function widget( $args, $instance ) {
        echo $args['before_widget'];
        if( !empty( $instance['title'] ) ) {
            echo $args['before_title'] . apply_filters( 'widget_title', $instance['title'], $instance, $this->id_base ) . $args['after_title'];
        }
        // le code fonctionnel du widget ici
        echo $args['after_widget'];
    }
}
add_action( 'widgets_init', function(){
     register_widget( 'Mes_Articles_Widget' );
});

Erstellen Sie im Plugin-Verzeichnis Ihrer lokalen Website einen Ordner mit dem Namen Widget-test-rest-api. Erstellen Sie in diesem Ordner eine Datei mit dem Namen Widget-test-rest-api.php und fügen Sie den obigen Code ein.

Übrigens entdecken Wie man eine Version von WordPress mit VersionPress verwaltet und wiederherstellt

Dieser Code enthält den Plugin-Header (die Kommentare am Anfang des Codes), der WordPress darüber informiert, dass es sich um ein Plugin handelt. Als nächstes folgt der Mindestcode zum Erstellen eines Widgets, der um einige Zeilen erhöht wird. 

Wir werden mehr Wert auf Funktion legen Widget (), weil darin die Anzeige des Widgets erstellt wird. Daher werden wir innerhalb dieser Funktion die Aufrufe über die HTTP-API ausführen.

Artikel abrufen

Wir benötigen einige Informationen, um die Produktionswebsite oder die Online-Website abzufragen. Dies wird in gewisser Weise die Frage sein, die an den WordPress-Kern unserer Online-Website gestellt wird. Dies sind der grundlegende API-Pfad, die verwendete Route, die verwendete Beendigung, die Header und die Parameter.

Sublimieren Sie Ihre illustrativen Bilder, indem Sie sie entdecken So erstellen Sie interaktive Bilder in einem WordPress-Blog

Der grundlegende Pfad für die WordPress-REST-API lautet immer / Wp-json / wp / v2 /. So wird der vollständige Pfad http://votre-domaine.com/wp-json/wp/v2/.

Die Route zum Abrufen der Elemente lautet / Beiträge. Was macht die komplette Route für Artikel ist http://votre-domaine.com/wp-json/wp/v2/posts.

Jede Route kann eine Reihe von Abbrüchen aufweisen, die sich durch die verwendete HTTP-Methode unterscheiden. Somit kann die Route eines Artikels sein / Beiträge / 291. Diese Straße 3 Endungen:

BESTELLE : um den Artikel abzurufen
SETZEN : um den Artikel zu aktualisieren
LÖSCHEN : um den Artikel zu löschen.

Bei Verwendung der HTTP-API und der GET-Beendigung besteht das Abrufen der Artikel aus einer Codezeile:

$response = wp_remote_get( 'http://mysite.com/wp-json/wp/v2/posts/' );

Machen Sie Ihre Artikel populär, indem Sie entdecken Wie Hinzufügen Sharing-Tasten auf Wordpress

Wenn die Antwort ein Objekt ist WP_Errorbeenden wir die Ausführung unserer Funktion Widget ()Wenn nicht, untersuchen wir den Inhalt des Antwortkörpers mit der Funktion wp_remote_retrieve_body Suche nach Artikeln im JSON-Format. So sieht die Funktion aus Widget ()  :

 public function widget( $args, $instance ) {
    $response = wp_remote_get( 'http://mysite.com/wp-json/wp/v2/posts/' );

    if( is_wp_error( $response ) ) {
        return;
    }

    $posts = json_decode( wp_remote_retrieve_body( $response ) );

    if( empty( $posts ) ) {
        return;
    }   
    echo $args['before_widget'];

    if( !empty( $instance['title'] ) ) {
        echo $args['before_title'] . apply_filters( 'widget_title', $instance['title'], $instance, $this->id_base ) . $args['after_title'];
    }
    if( !empty( $posts ) ) {
        echo '<ul>';
        foreach( $posts as $post ) {
            echo '<li><a href="' . $post->link. '">' . $post->title->rendered . '</a></li>';
        }
        echo '</ul>';
    }
    echo $args['after_widget'];
}

Interessant in diesem Beispiel ist das Ersetzen der Funktion wp_remote_get Andernfalls liegt dieses Beispiel außerhalb des Bereichs von WordPress. Dies bedeutet, dass wir den Kern von WordPress von jeder anderen Plattform abfragen können, sei es Joomla, Prestashop, Drupal, Android oder IOS.

Gehen Sie weiter, indem Sie diese entdecken 8 WordPress Plugins, um Ihre Website in eine mobile Anwendung zu verwandeln

Sie können daher eine native mobile Anwendung erstellen, die mit einem WordPress-Backoffice verbunden ist. Die REST-API verwandelt WordPress in eine Anwendungsentwicklungsplattform.

Gehen Sie mit der REST-API weiter

Das Abfragen des WordPress-Kerns zum Zwecke der Interaktion mit Daten macht 90% seiner Nutzung aus. Es gibt jedoch noch einige Bereiche, deren Erkundung interessant wäre: zwischengespeichert Antwort, Authentifizierung und Serviceerkennung.

Antwort-Caching

Wenn Sie Informationen wie die Artikel in unserem Beispiel abrufen, empfiehlt es sich, sie zwischenzuspeichern, d. H. Irgendwo auf dem anrufenden Terminal zu kopieren, um andere Aufrufe derselben Informationen zu vermeiden der Kellner. Es gibt verschiedene Ansätze, um dies zu erreichen, einschließlich JP REST API CACHE, die Plugins Cache, und Transienten.

Die Idee von transient ist, die Informationen lokal mit einem Ablaufdatum zu kopieren. Standardmäßig befindet sich die Kopie in der Datenbank. Einige Implementierungen ermöglichen jedoch das direkte Kopieren in den Speicher, wodurch der Wiederherstellungsvorgang noch schneller wird.

Siehe auch diese 7 Premium WordPress Plugins zur Optimierung des Cachings Ihrer Website

Die Informationen werden dann bis zu ihrem Ablauf aus der lokalen Datenbank abgerufen, wo sie dann von der Remote-Website abgerufen werden. Hier ist eine modifizierte Version unseres Widgets, die den Begriff Transient enthält (mit einer neuen Funktion):

public function get_remote_posts() {
    $posts = get_transient( 'remote_posts' );
    if( empty( $posts ) ) {
        $response = wp_remote_get( 'http://votre-domaine.com/wp-json/wp/v2/posts/' );
        if( is_wp_error( $response ) ) {
            return array();
        }

        $posts = json_decode( wp_remote_retrieve_body( $response ) );

        if( empty( $posts ) ) {
            return array();
        }

        set_transient( 'remote_posts', $posts, HOUR_IN_SECONDS );
    }

    return $posts;
}

public function widget( $args, $instance ) {
    $posts = $this->get_remote_posts();

    if( empty( $posts ) ) {
        return;
    }
    
    echo $args['before_widget'];

    if( !empty( $instance['title'] ) ) {
        echo $args['before_title'] . apply_filters( 'widget_title', $instance['title'], $instance, $this->id_base ) . $args['after_title'];
    }

    echo '<ul>';
    foreach( $posts as $post ) {
        echo '<li><a href="' . $post->link. '">' . $post->title->rendered . '</a></li>';
    }
    echo '</ul>';

    echo $args['after_widget'];

}

Authentifizierung

Wenn Sie mit externen Ressourcen arbeiten, ist es ratsam, sich zu identifizieren. Dies erfolgt über den Authentifizierungsprozess. Mit der REST-API können Sie sich auf zwei Arten identifizieren: Standardauthentifizierung und OAuth.

Grundlegende Authentifizierung : Von den beiden Methoden ist diese die einfachere. Es besteht darin, bei jeder Anfrage Ihren Benutzernamen und Ihr Passwort zu senden, was ein hohes Sicherheitsrisiko birgt. Aus diesem Grund sollte es NICHT so oft wie möglich in der Produktion verwendet werden.

Um die Basisauthentifizierung verwenden zu können, müssen Sie das Plugin installieren und aktivieren Basis-Auth. Um einen authentifizierten Anruf zu tätigen, deklarieren Sie den Header mit Basic und rufen Sie an:

$headers = array (
    'Authorization' => 'Basic ' . base64_encode( 'username:password' ),
);

$response = wp_remote_request( 'http://votre-domaine.com/wp-json/wp/v2/posts/1234/', array(
    'method' => 'DELETE',
    'headers' => $headers
));

Siehe auch So fügen Sie die Dual-Faktor-Authentifizierung in WordPress hinzu

Seien Sie vorsichtig mit diesem Beispiel, denn wenn Sie es auf Ihrer Website versuchen, löschen Sie den Artikel mit der ID 1234, falls vorhanden..

OAuth : Diese Methode, die aus der Sicht der Dokumentation immer noch unklar ist, erfordert, dass Sie das Plugin installieren und aktivieren OAuth1. Die Implementierung dieser Authentifizierungsmethode umfasst die Installation und kombinierte Verwendung von WP-CLI, eine Kommandozeile für WordPress und WP CLI-Client.

Die Einführung von Befehlszeilenschnittstellen ist an sich kein Problem, aber das Fehlen einer Befehlsliste ist das Problem.

Service-Erkennung

Ein Teil des Lernens einer API besteht darin, sich mit ihren Optionen vertraut zu machen. Ich empfehle Ihnen daher, sich das Teil anzuschauen Serviceerkennung der WordPress REST API-Dokumentation.

Dort finden Sie Methoden zur Interaktion mit Artikeln, Beitragstypen, Medien, Metadaten sowie Unregelmäßigkeiten wie die Unfähigkeit, einen Benutzer zu löschen, oder andere kleinere Probleme.

Denken Sie daran, dass dies eine laufende Arbeit ist, die bereits sehr interessant ist.

Wer nutzt die WordPress REST API?

In allen Dingen gibt es Pioniere, die WordPress REST API ist keine Ausnahme. Hier ist eine kurze Liste der wenigen Unternehmen, die die API trotz ihrer Jugend nutzen:

erschuf den Menschen Verwenden Sie die API, um Websites für Kunden zu erstellen, die etwas Flexibleres für das Frontend wünschen.

WP Live Search ist ein kostenloses Plugin, das die API für seine Suchfunktionen verwendet.

editus ist ein Premium-Plugin, das die API für seine Frontend-Bearbeitungsfunktionen verwendet.

D'après Wer benutzt dieses Ding? Andere Personen und Unternehmen implementieren die WordPress REST-API, um mobile Anwendungen zu erstellen.

Trotz ihrer Jugend ist die WordPress-REST-API als wichtiges Merkmal bei der Umwandlung von WordPress in eine Anwendungsentwicklungsplattform vielversprechend.

Verwenden Sie auch die WordPress REST API?  Wir möchten Ihre Eindrücke zu diesem Thema haben.

Wie finden Sie die Möglichkeiten, die es bietet? Teilen Sie uns Ihre Reaktionen in unserem Kommentarbereich mit.

Entdecken Sie auch einige Premium-WordPress-Plugins  

Sie können andere verwenden Wordpress-Plugins um ein modernes Erscheinungsbild zu geben und die Handhabung Ihres Blogs oder Ihrer Website zu optimieren.

Wir bieten Ihnen hier einige Premium-WordPress-Plugins an, die Ihnen dabei helfen werden.

1. WordPress Ultimate Weiterleitung

Das Plugin "WordPress Ultimate Redirect" ist die einzige Lösung, die Sie benötigen, um alle Ihre Weiterleitungen, 404s, Site-Migration und / oder Domain-Änderungs- oder Übertragungsanforderungen zu verwalten.

Wordpress Ultimate Redirect Plugin

Es gibt Plugins, die das tun, was das Plugin tut, aber nicht alle gleichzeitig. Dieses Plugin bietet alle üblichen 404-Weiterleitungsfunktionen sowie unsere bevorzugte "automatische Umleitung zur nächsten URL-Übereinstimmung".

Herunterladen | Demo | Web-Hosting

2. Leadeo

Wussten Sie, dass die Verwendung eines Videos auf Ihrer Zielseite die Conversions um mehr als 80% verbessern kann? Ebenso auf Verkaufsseiten mit mehr als 46%. Leadeo kann Ihnen dabei helfen, mehr Leads und Verkäufe von Personen zu erzielen, die sich das Video in Ihrem Blog ansehen.Leadeo

Dank dieses Plugins können Sie mach ein Video Nützlich für eine Zielgruppe, teilen Sie es in Ihren sozialen Netzwerken und Ihrer Kontaktliste per E-Mail und senden Sie einige Anzeigen. Damit die Leute das Video sehen und es mögen.

Da das Video das erwartete Interesse weckt, werden denjenigen angeboten, die es gesehen haben:

  • Melden Sie sich für Ihre E-Mail-Liste an, um tolle Tipps zu erhalten
  • um dich zu kontaktieren
  • teile eine interessante Sache, die du im Video gesagt hast
  • Teile das Video mit ihren Freunden
  • Klicken Sie auf die Schaltfläche zum Aufrufen von Aktionen
  • und andere

Alle diese Aktionen werden rechts neben dem Video angeboten.

Herunterladen | Demo | Web-Hosting

3. CommentPress

CommentPress ist ein leistungsstarkes WordPress-Plugin, mit dem Sie Kommentare schnell und einfach einfügen, bearbeiten und löschen können. CommentPress verwendet Ajax, jQuery und PHP, um Besuchern das Einfügen von Kommentaren zu ermöglichen, ohne die Seite neu laden zu müssen.Commentpress Ajax Kommentare Einfügen Bearbeiten und Löschen von Kommentaren

Dieses Plugin verfügt über viele Anpassungsoptionen, die es endlich so aussehen lassen, wie Sie es möchten. Es hat ein Captcha zum Blockieren von Spam und bringt mehr Sicherheit in Ihren Kommentarbereich.

Die Hauptmerkmale sind: das einfache Einfügen von Kommentaren, die Möglichkeit für Benutzer, auf bestimmte Kommentare zu antworten, die Paginierung von Kommentaren, die vollständige Verwaltung der Verwaltung des Kommentarbereichs, Schaltflächen zum einfachen Einfügen von Bildern, Videos und Links, ein vollständig ansprechendes Layout, ein Captcha zum Sichern des Formulars und zum Verhindern von Spam und vieles mehr.

Herunterladen | Demo | Web-Hosting

Empfohlene Ressourcen

Informieren Sie sich über andere empfohlene Ressourcen, die Sie beim Erstellen und Verwalten Ihrer Website unterstützen.

Zusammenfassung

Es! Das war's für dieses Tutorial. Wir hoffen, dass dieses Tutorial Ihnen gezeigt hat, wie Sie die WordPress REST-API verwenden. Zögere nicht zu Teile diese Artikel mit deinen Freunden in deinen bevorzugten sozialen Netzwerken

Sie können jedoch auch unsere RessourcenWenn Sie mehr Elemente benötigen, um Ihre Projekte zur Erstellung von Internetseiten durchzuführen, konsultieren Sie unseren Leitfaden auf der WordPress-Blog-Erstellung.

Wenn Sie Vorschläge oder Anmerkungen haben, hinterlassen Sie diese in unserer Rubrik commentaires.

...