Dieses Tutorial zeigt die Installation und Verwendung des WP-API mit OAuth, einem WordPress-Plugin, das restliche API-Endpunkte bereitstellt. Nicht authentifizierte Benutzer können Inhalte lesen, während authentifizierte Benutzer (über OAuth oder Cookies) Inhalte schreiben können. Der Prozess ist nicht intuitiv, daher vereinfacht dieser Leitfaden das Setup unter der Annahme der grundlegenden Terminal- und Vagrant -Vertrautheit.
Schlüsselkonzepte:
/wp-json/posts
). wp-cli
für Terminalbefehle. Hinweis: WordPress verwendet den weniger effizienten 3-legierten OAuth-Fluss. Installation:
Verwenden eines Gehöfts verbesserte Instanz:
git clone https://github.com/swader/homestead_improved hi_wp_github cd hi_wp_github sed -i '' "s@map\: \.@map\: $PWD@g" Homestead.yaml
modifizieren Sie Homestead.yaml
sites
block:
sites: - map: test.app to: /home/vagrant/Code/wptest
(sicherstellen test.app
befindet sich in Ihrer /etc/hosts
-Datei.)
WordPress installieren:
cd ~/Code wget https://wordpress.org/latest.tar.gz tar -xvzf latest.tar.gz mv wordpress wptest cd wptest cp wp-config-sample.php wp-config.php
Konfigurieren Sie wp-config.php
mit Datenbankanmeldeinformationen. Greifen Sie über Ihren Browser auf die Website zu.
WP-API-Setup:
Installieren Sie das WP-API-Plugin (Version 1.2.* Oder höher) über den WordPress-Plugin-Manager. Nach der Installation sollte /wp-json/posts
ein JSON -Array von Posts zurückgeben. Die Einreichung von Inhalten erfordert jedoch weitere Schritte.
oAuth Server -Setup:
WordPress verwendet das veraltete OAuth1. Installieren Sie wp-cli
:
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar chmod +x wp-cli.phar sudo mv wp-cli.phar /usr/local/bin/wp
Installieren Sie das OAuth1 -Plugin:
cd ~/Code/wptest git clone https://github.com/WP-API/OAuth1 wp-content/plugins/oauth-server
Aktivieren Sie das Plugin und generieren Sie Schlüssel/Geheimnisse:
wp oauth1 add
Dies gibt eine ID, einen Schlüssel und ein Geheimnis für die OAuth -Authentifizierung aus. WordPress verwendet den weniger effizienten 3-legierten OAuth-Fluss.
OAuth Client Setup:
Erstellen Sie ein neues Projekt (submitter
) in Ihrer VM, wobei Homestead.yaml
:
sites: - map: test.app to: /home/vagrant/Code/wptest - map: test2.app to: /home/vagrant/Code/submitter
Die VM (vagrant provision
) neu aufstellen. Erstellen Sie index.php
, callback.php
und credentials.php
im Verzeichnis submitter
. Populate credentials.php
mit den Schlüssel aus dem vorherigen Schritt.
Installieren Sie die erforderlichen Komponistenpakete:
composer require --dev symfony/var-dumper guzzlehttp/guzzle:~5 guzzlehttp/oauth-subscriber
Ändern Sie die WordPress default-filters.php
, um Weiterleitungen zu ermöglichen:
git clone https://github.com/swader/homestead_improved hi_wp_github cd hi_wp_github sed -i '' "s@map\: \.@map\: $PWD@g" Homestead.yaml
In den folgenden Abschnitten werden die Dateien index.php
, callback.php
und makepost.php
für die 3-beinige OAuth-Fluss- und API-Interaktion beschrieben. (Code für die Kürze weggelassen, finden Sie in den ursprünglichen Eingaben für vollständige Code -Beispiele).
Schlussfolgerung:
Dieses Tutorial führt Sie durch die Einrichtung von WP-API mit OAuth. Dieser Leitfaden vereinfacht den Prozess. Weitere Verbesserungen und Verfeinerungen sind möglich.
Das obige ist der detaillierte Inhalt vonWP API und OAuth - Verwenden von WordPress ohne WordPress. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!