Maison >Tutoriel CMS >WordPresse >API WP et OAuth - Utilisation de WordPress sans WordPress

API WP et OAuth - Utilisation de WordPress sans WordPress

Christopher Nolan
Christopher Nolanoriginal
2025-02-16 11:55:07666parcourir

Ce tutoriel montre l'installation et l'utilisation du WP-API avec OAuth, un plugin WordPress fournissant des points de terminaison API de type repos. Les utilisateurs non authentifiés peuvent lire du contenu, tandis que les utilisateurs authentifiés (via OAuth ou cookies) peuvent écrire du contenu. Le processus n'est pas intuitif, donc ce guide simplifie la configuration, en supposant la familiarité de base et vagabond.

WP API and OAuth - Using WordPress without WordPress

Concepts clés:

  • Le plugin utilise des points de terminaison de type repos pour l'accès au contenu.
  • Le WP-API intégré expose les internes WordPress, permettant à JSON de récupérer (par exemple, /wp-json/posts).
  • oAuth1 gère l'authentification, nécessitant wp-cli pour les commandes terminales. Remarque: WordPress utilise le flux OAuth à 3 pattes moins efficace.
  • Le tutoriel montre comment une application externe authentifie avec WordPress et soumet un message via l'API à l'aide de Guzzle.

Installation:

Utilisation d'une instance améliorée de propriété:

<code class="language-bash">git clone https://github.com/swader/homestead_improved hi_wp_github
cd hi_wp_github
sed -i '' "s@map\: \.@map\: $PWD@g" Homestead.yaml</code>

Modifier Homestead.yaml S sites Block:

<code class="language-yaml">sites:
    - map: test.app
      to: /home/vagrant/Code/wptest</code>

(assurez-vous que test.app est dans votre fichier /etc/hosts.)

Installez WordPress:

<code class="language-bash">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</code>

Configurez wp-config.php avec des informations d'identification de base de données. Accédez au site via votre navigateur.

Configuration WP-API:

Installez le plugin WP-API (version 1.2. * Ou version ultérieure) via le WordPress Plugin Manager. Après l'installation, /wp-json/posts doit renvoyer un tableau JSON de messages. Cependant, la soumission du contenu nécessite d'autres étapes.

WP API and OAuth - Using WordPress without WordPress

Configuration du serveur OAuth:

WordPress utilise le OAuth1 obsolète. Installer wp-cli:

<code class="language-bash">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</code>

Installez le plugin OAuth1:

<code class="language-bash">cd ~/Code/wptest
git clone https://github.com/WP-API/OAuth1 wp-content/plugins/oauth-server</code>

Activez le plugin et générez des touches / secrets:

<code class="language-bash">wp oauth1 add</code>

Cela sortira un ID, une clé et un secret pour l'authentification OAuth. WordPress utilise le flux OAuth à 3 pattes moins efficace.

Configuration du client OAuth:

Créez un nouveau projet (submitter) dans votre machine virtuelle, en ajoutant un nouveau site à Homestead.yaml:

<code class="language-yaml">sites:
    - map: test.app
      to: /home/vagrant/Code/wptest
    - map: test2.app
      to: /home/vagrant/Code/submitter</code>

Reprovision de la VM (vagrant provision). Créer index.php, callback.php et credentials.php dans le répertoire submitter. Remplir credentials.php avec les clés de l'étape précédente.

Installer les packages de compositeurs requis:

<code class="language-bash">composer require --dev symfony/var-dumper guzzlehttp/guzzle:~5 guzzlehttp/oauth-subscriber</code>

Modifiez le wordpress default-filters.php pour permettre les redirections:

<code class="language-bash">git clone https://github.com/swader/homestead_improved hi_wp_github
cd hi_wp_github
sed -i '' "s@map\: \.@map\: $PWD@g" Homestead.yaml</code>

Les sections suivantes détaillent les fichiers index.php, callback.php et makepost.php pour le flux OAuth à 3 pattes et l'interaction API. (Code omis pour la concision, reportez-vous à l'entrée d'origine pour les exemples de code complets).

Conclusion:

Ce tutoriel vous guide en configurant WP-API avec OAuth. Bien que complexe, ce guide simplifie le processus. D'autres améliorations et raffinements sont possibles.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn