Table des matières
Les plats clés
Introduction à OAuth
codage de la classe PHP
comment utiliser la classe
Crédit et ressources
Conclusion
Les questions fréquemment posées sur OAuth, Twitter et WordPress HTTP API
Comment puis-je configurer OAuth2 sur mon site WordPress?
Quel est le rôle d'OAuth dans l'API Twitter?
Comment puis-je résoudre les problèmes d'API d'erreur de déploiement sur Twitter?
Quelle est la différence entre OAuth1.0 et OAuth2.0?
Comment puis-je utiliser l'API WordPress HTTP?
Comment puis-je sécuriser mes jetons OAuth?
Quels sont les problèmes communs rencontrés lors de l'intégration d'OAuth avec WordPress?
Comment puis-je résoudre les problèmes avec l'API Twitter?
Comment puis-je utiliser OAuth2.0 avec l'API Twitter?
Quels sont les avantages de l'utilisation du plugin de serveur Miniorange OAuth 2.0 pour WordPress?
Maison Tutoriel CMS WordPresse OAuth, Twitter, l'API WordPress HTTP et vous

OAuth, Twitter, l'API WordPress HTTP et vous

Feb 18, 2025 am 08:30 AM

OAuth, Twitter, the WordPress HTTP API and You

OAuth, Twitter, l'API WordPress HTTP et vous

Les plats clés

  • OAuth est un protocole d'authentification qui offre un moyen plus sécurisé d'interagir avec les données protégées, permettant aux applications d'agir au nom des utilisateurs sans partager leurs mots de passe. Twitter utilise OAuth pour autoriser les demandes HTTP à son API.
  • Le tutoriel fournit un guide étape par étape sur la façon de créer une classe PHP alimentée par l'API HTTP WordPress pour consommer Twitter. Cela comprend la création d'une application sur le centre de gestion des applications de Twitter pour les clés et le jeton d'accès, le codage de la classe PHP et la création de demandes HTTP à Twitter avec l'authentification OAuth.
  • La classe PHP créée dans le tutoriel peut être utilisée dans le contexte d'un plugin WordPress pour accéder aux données Twitter. Les exemples fournis incluent la récupération des tweets récents et la mise à jour des descriptions de profil.
  • Le tutoriel souligne l'importance de configurer correctement OAuth et d'utiliser les touches API correctes pour éviter les erreurs de déploiement. Il met également en évidence la nécessité de sécuriser les jetons OAuth pour éviter un accès non autorisé.

Dans les tutoriels précédents, nous avons plongé profondément dans l'API WordPress HTTP. Nous sommes même allés jusqu'à la construction des plugins suivants pour démontrer des exemples du monde réel de son utilisation: Whois de domaine et widget de données sociales; Plugin de protection CAPTCHA pour la connexion, enregistrement et commentaire WordPress; et plugin pour arrêter l'inscription de l'adresse e-mail jetable.

Dans ce tutoriel, nous serons présentés au monde d'Oauth, comment Twitter l'utilise pour autoriser les demandes HTTP à son API et enfin, construire une classe PHP alimentée par API HTTP WordPress dont les plugins peuvent profiter lors de la consommation de Twitter .

Introduction à OAuth

OAuth est un protocole d'authentification qui fournit un moyen simple, plus sûr et plus sécurisé de publier et d'interagir avec des données protégées. Il permet aux utilisateurs d'approuver les applications d'agir en leur nom sans partager leur mot de passe.

Si vous stockez des données protégées au nom de vos utilisateurs, ils ne devraient pas diffuser leurs mots de passe sur le Web pour y accéder. Au lieu de cela, vous pouvez utiliser OAuth pour donner à vos utilisateurs accès à leurs données, tout en protégeant leurs informations d'identification de compte.

codage de la classe PHP

Un aperçu de la façon dont les demandes HTTP à Twitter sont faites avec l'authentification OAuth seront expliquées car nous codons la classe PHP.

Tout d'abord, rendez-vous au centre de gestion des applications de Twitter; Créez une application pour saisir vos clés et votre jeton d'accès.

Un guide étape par étape sur la création d'applications Twitter et l'obtention des clés de l'API se trouvent sur hostoople.com

Créez la classe PHP et incluez les propriétés qui stockeront les différents paramètres. Ceux-ci sont décrits ci-dessous.

<span>class Twitter_API_WordPress {
</span>
	<span>/** <span>@var <span>string</span> OAuth access token */</span>
</span>	<span>private $oauth_access_token;
</span>
	<span>/** <span>@var <span>string</span> OAuth access token secrete */</span>
</span>	<span>private $oauth_access_token_secret;
</span>
	<span>/** <span>@var <span>string</span> Consumer key */</span>
</span>	<span>private $consumer_key;
</span>
	<span>/** <span>@var <span>string</span> consumer secret */</span>
</span>	<span>private $consumer_secret;
</span>
	<span>/** <span>@var <span>array</span> POST parameters */</span>
</span>	<span>private $post_fields;
</span>
	<span>/** <span>@var <span>string</span> GET parameters */</span>
</span>	<span>private $get_field;
</span>
	<span>/** <span>@var <span>array</span> OAuth credentials */</span>
</span>	<span>private $oauth_details;
</span>
	<span>/** <span>@var <span>string</span> Twitter's request URL */</span>
</span>	<span>private $request_url;
</span>
	<span>/** <span>@var <span>string</span> Request method or HTTP verb */</span>
</span>	<span>private $request_method;</span>
Copier après la connexion
Copier après la connexion

Le constructeur acceptera un tableau de la clé de consommation (ou API) d'application de votre Twitter, ainsi que du jeton d'accès et d'accès à jeton et de les enregistrer dans leurs propriétés respectives.

<span>/** Class constructor */
</span>	<span>public function __construct( $settings ) {
</span>
		<span>if ( ! isset( $settings['oauth_access_token'] )
</span>		     <span>|| ! isset( $settings['oauth_access_token_secret'] )
</span>		     <span>|| ! isset( $settings['consumer_key'] )
</span>		     <span>|| ! isset( $settings['consumer_secret'] )
</span>		<span>) {
</span>			<span>return new WP_Error( 'twitter_param_incomplete', 'Make sure you are passing in the correct parameters' );
</span>		<span>}
</span>
		<span>$this->oauth_access_token        = $settings['oauth_access_token'];
</span>		<span>$this->oauth_access_token_secret = $settings['oauth_access_token_secret'];
</span>		<span>$this->consumer_key              = $settings['consumer_key'];
</span>		<span>$this->consumer_secret           = $settings['consumer_secret'];
</span>	<span>}</span>
Copier après la connexion
Copier après la connexion

Ensuite sont les méthodes qui accepteront les paramètres GET ou POST pour la demande HTTP.

<span>/**
</span><span>	 * Store the POST parameters
</span><span>	 *
</span><span>	 * <span>@param <span>array</span> $array array of POST parameters
</span></span><span>	 *
</span><span>	 * <span>@return $this
</span></span><span>	 */
</span>	<span>public function set_post_fields( array $array ) {
</span>		<span>$this->post_fields = $array;
</span>
		<span>return $this;
</span>	<span>}
</span>

	<span>/**
</span><span>	 * Store the GET parameters
</span><span>	 *
</span><span>	 * <span>@param $string
</span></span><span>	 *
</span><span>	 * <span>@return $this
</span></span><span>	 */
</span>	<span>public function set_get_field( $string ) {
</span>		<span>$this->getfield = $string;
</span>
		<span>return $this;
</span>	<span>}</span>
Copier après la connexion
Copier après la connexion

La méthode privée _build_signature_base_string () accepte les arguments suivants pour créer la chaîne de base de la signature: l'URL de la demande, la méthode de demande ou le verbe http et les informations d'identification OAuth (Consumer Key and Secret; Access Token and Secret; et les paramètres de get si c'est une demande de get).

<span>/**
</span><span>	 * Create a signature base string from list of arguments
</span><span>	 *
</span><span>	 * <span>@param <span>string</span> $request_url request url or endpoint
</span></span><span>	 * <span>@param <span>string</span> $method HTTP verb
</span></span><span>	 * <span>@param <span>array</span> $oauth_params Twitter's OAuth parameters
</span></span><span>	 *
</span><span>	 * <span>@return <span>string</span>
</span></span><span>	 */
</span>	<span>private function _build_signature_base_string( $request_url, $method, $oauth_params ) {
</span>		<span>// save the parameters as key value pair bounded together with '&'
</span>		<span>$string_params = array();
</span>
		<span>ksort( $oauth_params );
</span>
		<span>foreach ( $oauth_params as $key => $value ) {
</span>			<span>// convert oauth parameters to key-value pair
</span>			<span>$string_params[] = "<span><span>$key</span>=<span>$value</span>"</span>;
</span>		<span>}
</span>
		<span>return "<span><span>$method</span>&"</span> . rawurlencode( $request_url ) . '&' . rawurlencode( implode( '&', $string_params ) );
</span>	<span>}</span>
Copier après la connexion
Copier après la connexion

La méthode privée _generaterate_oauth_signature () accepte la chaîne de base de signature créée pour générer la signature OAuth.

<span>private function _generate_oauth_signature( $data ) {
</span>
	<span>// encode consumer and token secret keys and subsequently combine them using & to a query component
</span>	<span>$hash_hmac_key = rawurlencode( $this->consumer_secret ) . '&' . rawurlencode( $this->oauth_access_token_secret );
</span>
	<span>$oauth_signature = base64_encode( hash_hmac( 'sha1', $data, $hash_hmac_key, true ) );
</span>
	<span>return $oauth_signature;
</span><span>}</span>
Copier après la connexion

le build_oauth () crée un tableau contenant les données suivantes et les enregistre sur la propriété OAuth_Details, qui sera utilisée ultérieurement par Authorization_Header () pour générer l'en-tête d'autorisation.

  • oauth_consumer_key - Twitter Application Consumer Key.
  • oauth_nonce - une chaîne aléatoire, générée de manière unique par le client pour permettre au serveur de vérifier qu'une demande n'a jamais été faite auparavant à l'aide de temps () ou mt_rand ().
  • oauth_signature_method - La méthode de signature qui est souvent "hmac-sha1"
  • oauth_token - application oauth token.
  • oauth_timestamp - horodatage actuel créé avec le temps ()
  • oauth_version - Twitter utilise la version 1.0
  • oAuth_Signature - Signature OAuth générée par _GENEREAT_OAUTH_SIGNATURE ()

La méthode de demande ou le verbe http est également enregistré sur la propriété request_method.

<span>/**
</span><span>	 * Build, generate and include the OAuth signature to the OAuth credentials
</span><span>	 *
</span><span>	 * <span>@param <span>string</span> $request_url Twitter endpoint to send the request to
</span></span><span>	 * <span>@param <span>string</span> $request_method Request HTTP verb eg GET or POST
</span></span><span>	 *
</span><span>	 * <span>@return $this
</span></span><span>	 */
</span>	<span>public function build_oauth( $request_url, $request_method ) {
</span>		<span>if ( ! in_array( strtolower( $request_method ), array( 'post', 'get' ) ) ) {
</span>			<span>return new WP_Error( 'invalid_request', 'Request method must be either POST or GET' );
</span>		<span>}
</span>
		<span>$oauth_credentials = array(
</span>			<span>'oauth_consumer_key'     => $this->consumer_key,
</span>			<span>'oauth_nonce'            => time(),
</span>			<span>'oauth_signature_method' => 'HMAC-SHA1',
</span>			<span>'oauth_token'            => $this->oauth_access_token,
</span>			<span>'oauth_timestamp'        => time(),
</span>			<span>'oauth_version'          => '1.0'
</span>		<span>);
</span>
		<span>if ( ! is_null( $this->get_field ) ) {
</span>			<span>// remove question mark(?) from the query string
</span>			<span>$get_fields = str_replace( '?', '', explode( '&', $this->get_field ) );
</span>
			<span>foreach ( $get_fields as $field ) {
</span>				<span>// split and add the GET key-value pair to the post array.
</span>				<span>// GET query are always added to the signature base string
</span>				<span>$split                          = explode( '=', $field );
</span>				<span>$oauth_credentials[ $split[0] ] = $split[1];
</span>			<span>}
</span>		<span>}
</span>
		<span>// convert the oauth credentials (including the GET QUERY if it is used) array to query string.
</span>		<span>$signature = $this->_build_signature_base_string( $request_url, $request_method, $oauth_credentials );
</span>
		<span>$oauth_credentials['oauth_signature'] = $this->_generate_oauth_signature( $signature );
</span>
		<span>// save the request url for use by WordPress HTTP API
</span>		<span>$this->request_url = $request_url;
</span>
		<span>// save the OAuth Details
</span>		<span>$this->oauth_details = $oauth_credentials;
</span>
		<span>$this->request_method = $request_method;
</span>
		<span>return $this;
</span>	<span>}</span>
Copier après la connexion

Voici le code de la méthode Authorization_Header () dont nous avons parlé.

<span>/**
</span><span>	 * Generate the authorization HTTP header
</span><span>	 * <span>@return <span>string</span>
</span></span><span>	 */
</span>	<span>public function authorization_header() {
</span>		<span>$header = 'OAuth ';
</span>
		<span>$oauth_params = array();
</span>		<span>foreach ( $this->oauth_details as $key => $value ) {
</span>			<span>$oauth_params[] = "<span><span>$key</span>=\""</span> . rawurlencode( $value ) . '"';
</span>		<span>}
</span>
		<span>$header .= implode( ', ', $oauth_params );
</span>
		<span>return $header;
</span>	<span>}</span>
Copier après la connexion

Le process_request () enverra la demande GET ou POST en utilisant wp_remote_get () ou wp_remote_post () en fonction de la méthode de demande et renvoyez par la suite la réponse à l'aide de wp_remote_retrieve_body ().

<span>/**
</span><span>	 * Process and return the JSON result.
</span><span>	 *
</span><span>	 * <span>@return <span>string</span>
</span></span><span>	 */
</span>	<span>public function process_request() {
</span>
		<span>$header = $this->authorization_header();
</span>
		<span>$args = array(
</span>			<span>'headers'   => array( 'Authorization' => $header ),
</span>			<span>'timeout'   => 45,
</span>			<span>'sslverify' => false
</span>		<span>);
</span>
		<span>if ( ! is_null( $this->post_fields ) ) {
</span>			<span>$args['body'] = $this->post_fields;
</span>
			<span>$response = wp_remote_post( $this->request_url, $args );
</span>
			<span>return wp_remote_retrieve_body( $response );
</span>		<span>}
</span>
		<span>else {
</span>
			<span>// add the GET parameter to the Twitter request url or endpoint
</span>			<span>$url = $this->request_url . $this->get_field;
</span>
			<span>$response = wp_remote_get( $url, $args );
</span>
			<span>return wp_remote_retrieve_body( $response );
</span>
		<span>}
</span>
	<span>}</span>
Copier après la connexion

Voir ce tutoriel pour une meilleure compréhension de l'API WordPress HTTP et de son fonctionnement.

Et enfin, nous fermons la classe.

<span>} // Twitter_API_WordPress</span>
Copier après la connexion

Veuillez noter: dans set_post_fields (), set_get_field () et build_oauth (), l'objet $ Ceci est renvoyé dans chaque méthode afin de prendre en charge le chaînage de la méthode.

Exemple:

<span>$SomeObject->getObjectOne()->getObjectTwo()</span>
Copier après la connexion

Voir l'utilisation des classes ci-dessous pour une meilleure compréhension.

comment utiliser la classe

Cette classe doit être utilisée dans le contexte d'un plugin WordPress. Cela ne fonctionnera pas comme une classe autonome car il nécessite l'API WordPress HTTP pour qu'il fonctionne.

Pour obtenir une liste ou une collection de vos tweets les plus récents, suivez le guide ci-dessous. Remarque: https://api.twitter.com/1.1/statures/user_timeline.json est l'URL de ressource pour récupérer les données de tweet récentes.

Tout d'abord, créez un tableau de vos clés d'accès et de vos jetons.

<span>class Twitter_API_WordPress {
</span>
	<span>/** <span>@var <span>string</span> OAuth access token */</span>
</span>	<span>private $oauth_access_token;
</span>
	<span>/** <span>@var <span>string</span> OAuth access token secrete */</span>
</span>	<span>private $oauth_access_token_secret;
</span>
	<span>/** <span>@var <span>string</span> Consumer key */</span>
</span>	<span>private $consumer_key;
</span>
	<span>/** <span>@var <span>string</span> consumer secret */</span>
</span>	<span>private $consumer_secret;
</span>
	<span>/** <span>@var <span>array</span> POST parameters */</span>
</span>	<span>private $post_fields;
</span>
	<span>/** <span>@var <span>string</span> GET parameters */</span>
</span>	<span>private $get_field;
</span>
	<span>/** <span>@var <span>array</span> OAuth credentials */</span>
</span>	<span>private $oauth_details;
</span>
	<span>/** <span>@var <span>string</span> Twitter's request URL */</span>
</span>	<span>private $request_url;
</span>
	<span>/** <span>@var <span>string</span> Request method or HTTP verb */</span>
</span>	<span>private $request_method;</span>
Copier après la connexion
Copier après la connexion

Définissez l'URL et la méthode de la demande où W3guy est votre nom d'utilisateur Twitter.

<span>/** Class constructor */
</span>	<span>public function __construct( $settings ) {
</span>
		<span>if ( ! isset( $settings['oauth_access_token'] )
</span>		     <span>|| ! isset( $settings['oauth_access_token_secret'] )
</span>		     <span>|| ! isset( $settings['consumer_key'] )
</span>		     <span>|| ! isset( $settings['consumer_secret'] )
</span>		<span>) {
</span>			<span>return new WP_Error( 'twitter_param_incomplete', 'Make sure you are passing in the correct parameters' );
</span>		<span>}
</span>
		<span>$this->oauth_access_token        = $settings['oauth_access_token'];
</span>		<span>$this->oauth_access_token_secret = $settings['oauth_access_token_secret'];
</span>		<span>$this->consumer_key              = $settings['consumer_key'];
</span>		<span>$this->consumer_secret           = $settings['consumer_secret'];
</span>	<span>}</span>
Copier après la connexion
Copier après la connexion

Enfin, traitez la demande comme ça.

<span>/**
</span><span>	 * Store the POST parameters
</span><span>	 *
</span><span>	 * <span>@param <span>array</span> $array array of POST parameters
</span></span><span>	 *
</span><span>	 * <span>@return $this
</span></span><span>	 */
</span>	<span>public function set_post_fields( array $array ) {
</span>		<span>$this->post_fields = $array;
</span>
		<span>return $this;
</span>	<span>}
</span>

	<span>/**
</span><span>	 * Store the GET parameters
</span><span>	 *
</span><span>	 * <span>@param $string
</span></span><span>	 *
</span><span>	 * <span>@return $this
</span></span><span>	 */
</span>	<span>public function set_get_field( $string ) {
</span>		<span>$this->getfield = $string;
</span>
		<span>return $this;
</span>	<span>}</span>
Copier après la connexion
Copier après la connexion

Si tout se passe bien, le résultat de la variable sera rempli de données JSON de vos tweets récents.

Pour une demande de poste, par exemple, disons que vous souhaitez mettre à jour la description de votre profil.

<span>/**
</span><span>	 * Create a signature base string from list of arguments
</span><span>	 *
</span><span>	 * <span>@param <span>string</span> $request_url request url or endpoint
</span></span><span>	 * <span>@param <span>string</span> $method HTTP verb
</span></span><span>	 * <span>@param <span>array</span> $oauth_params Twitter's OAuth parameters
</span></span><span>	 *
</span><span>	 * <span>@return <span>string</span>
</span></span><span>	 */
</span>	<span>private function _build_signature_base_string( $request_url, $method, $oauth_params ) {
</span>		<span>// save the parameters as key value pair bounded together with '&'
</span>		<span>$string_params = array();
</span>
		<span>ksort( $oauth_params );
</span>
		<span>foreach ( $oauth_params as $key => $value ) {
</span>			<span>// convert oauth parameters to key-value pair
</span>			<span>$string_params[] = "<span><span>$key</span>=<span>$value</span>"</span>;
</span>		<span>}
</span>
		<span>return "<span><span>$method</span>&"</span> . rawurlencode( $request_url ) . '&' . rawurlencode( implode( '&', $string_params ) );
</span>	<span>}</span>
Copier après la connexion
Copier après la connexion

Crédit et ressources

La structure et le code de cette classe ont été inspirés par le client PHP Twitter de James Mallison.

Pour en savoir plus sur l'API Twitter et OAuth, voir les ressources ci-dessous.

  • oauth authentification démystifiée
  • comment Twitter Oauth fonctionne dans le contexte du scénario
  • Documentation de Twitter
  • Création d'un serveur PHP OAuth
  • ietf rfc

Conclusion

Dans cet article, nous avons appris sur OAuth et comment consommer Twitter à l'aide d'une classe client HTTP alimentée par API HTTP WordPress. Comme indiqué précédemment, cette classe doit être utilisée dans un plugin WordPress car il utilise l'API WordPress HTTP, qui n'est présent ou instancié que lorsque WordPress est chargé. Cette classe PHP peut être utile dans la construction, par exemple, un récent widget de tweets.

Le code est disponible sur github. N'hésitez pas à se nourrir et même à soumettre des demandes de traction.

Assurez-vous de vous abonner à la chaîne WordPress pour se tenir au courant de mes prochains tutoriels.

codage heureux.

Les questions fréquemment posées sur OAuth, Twitter et WordPress HTTP API

Comment puis-je configurer OAuth2 sur mon site WordPress?

La configuration de OAuth2 sur votre site WordPress implique l'installation et la configuration d'un plugin OAuth2. Vous pouvez choisir parmi plusieurs plugins disponibles dans le répertoire de plugin WordPress. Une fois que vous avez installé le plugin, vous devrez le configurer avec les détails de votre fournisseur OAuth2, y compris l'ID client et le secret du client. Vous devrez peut-être également configurer des URL et des portées de redirection, en fonction des exigences de votre fournisseur.

Quel est le rôle d'OAuth dans l'API Twitter?

OAuth joue un rôle crucial dans l'API Twitter en fournissant accès délégué sécurisé. Il permet aux utilisateurs d'accorder l'accès aux applications tierces à leur compte Twitter sans partager leur mot de passe. Cela signifie que les applications peuvent interagir avec Twitter en votre nom, effectuer des actions comme tweeter, lire votre calendrier et suivre de nouveaux utilisateurs.

Comment puis-je résoudre les problèmes d'API d'erreur de déploiement sur Twitter?

Déploiement d'erreurs Les problèmes d'API dans Twitter peuvent être résolus en vous assurant que votre application est correctement configurée et que vous utilisez les touches API correctes. Vous devez également vous assurer que votre demande ne dépasse pas les limites de taux de Twitter. Si vous rencontrez toujours des problèmes, cela peut valoir la peine de contacter le support des développeurs de Twitter pour une assistance supplémentaire.

Quelle est la différence entre OAuth1.0 et OAuth2.0?

oAuth1.0 et OAuth2.0 sont toutes deux des protocoles pour l'autorisation d'API sécurisée. Cependant, OAuth2.0 est un protocole plus rationalisé et puissant. Il offre plus de flexibilité pour les développeurs et peut être utilisé pour des applications sur une variété de plateformes, y compris les applications mobiles et de bureau. OAuth1.0, en revanche, est plus complexe et moins flexible.

Comment puis-je utiliser l'API WordPress HTTP?

L'API HTTP WordPress peut être utilisée pour envoyer des demandes HTTP à partir de votre Site WordPress. Cela peut être utile pour interagir avec des API externes, comme l'API Twitter. Pour utiliser l'API WordPress HTTP, vous devrez utiliser les fonctions WP_Remote_get ou WP_Remote_Post, en passant dans l'URL du point de terminaison de l'API avec lequel vous souhaitez interagir.

Comment puis-je sécuriser mes jetons OAuth?

sécuriser vos jetons OAuth est crucial pour éviter un accès non autorisé à votre application. Vous devez toujours stocker vos jetons en toute sécurité, comme dans une base de données sécurisée, et ne jamais les exposer dans le code côté client. Vous devez également implémenter l'expiration des jetons et actualiser les jetons pour vous assurer que même si un jeton est compromis, il ne peut pas être utilisé indéfiniment.

Quels sont les problèmes communs rencontrés lors de l'intégration d'OAuth avec WordPress?

Certains problèmes communs rencontrés lors de l'intégration de l'OAuth avec WordPress incluent une configuration incorrecte du plugin OAuth, des problèmes avec les URL de redirection et des problèmes avec l'API du fournisseur OAuth. Ces problèmes peuvent généralement être résolus en vérifiant soigneusement votre configuration et en vous assurant que vous utilisez les touches API correctes et que vous redirigez les URL.

Comment puis-je résoudre les problèmes avec l'API Twitter?

Les problèmes de dépannage des problèmes de dépannage L'API Twitter peut impliquer la vérification de la configuration de votre application, vous assurer que vous utilisez les touches API correctes et la vérification que votre application ne dépasse pas les limites de taux de Twitter. Vous pouvez également utiliser la documentation de référence de l'API de Twitter pour comprendre le comportement attendu de l'API et pour identifier tout problème potentiel.

Comment puis-je utiliser OAuth2.0 avec l'API Twitter?

Pour utiliser OAuth2 .0 Avec l'API Twitter, vous devrez créer une application Twitter et obtenir vos clés API. Vous devrez ensuite utiliser ces clés pour obtenir un jeton d'accès, qui peut être utilisé pour authentifier vos demandes d'API. Notez que la mise en œuvre par Twitter de OAuth2.0 est uniquement en application, ce qui signifie qu'elle ne peut être utilisée que pour les demandes qui ne nécessitent pas de contexte utilisateur.

Quels sont les avantages de l'utilisation du plugin de serveur Miniorange OAuth 2.0 pour WordPress?

Le plugin de serveur Miniorange OAuth 2.0 pour WordPress fournit un moyen simple et sécurisé de configurer un serveur OAuth2.0 sur votre site WordPress. Il prend en charge plusieurs types de subventions, y compris le code d'autorisation, l'implicite, le mot de passe et les informations d'identification du client, et il prend également en charge JWT et SAML. Cela en fait un choix flexible et puissant pour implémenter OAuth2.0 sur votre site WordPress.

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 de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

<🎜>: Grow A Garden - Guide de mutation complet
3 Il y a quelques semaines By DDD
<🎜>: Bubble Gum Simulator Infinity - Comment obtenir et utiliser les clés royales
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Système de fusion, expliqué
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers of the Witch Tree - Comment déverrouiller le grappin
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Tutoriel Java
1670
14
Tutoriel PHP
1274
29
Tutoriel C#
1256
24
Comment se connecter aux informations utilisateur dans WordPress pour des résultats personnalisés Comment se connecter aux informations utilisateur dans WordPress pour des résultats personnalisés Apr 19, 2025 pm 11:57 PM

Récemment, nous vous avons montré comment créer une expérience personnalisée pour les utilisateurs en permettant aux utilisateurs d'enregistrer leurs publications préférées dans une bibliothèque personnalisée. Vous pouvez porter des résultats personnalisés à un autre niveau en utilisant leurs noms à certains endroits (c'est-à-dire des écrans de bienvenue). Heureusement, WordPress facilite l'obtention d'informations sur les utilisateurs connectés. Dans cet article, nous vous montrerons comment récupérer des informations liées à l'utilisateur actuellement connecté. Nous utiliserons le get_currentUserInfo ();  fonction. Cela peut être utilisé n'importe où dans le thème (en-tête, pied de page, barre latérale, modèle de page, etc.). Pour que cela fonctionne, l'utilisateur doit être connecté. Nous devons donc utiliser

Comment ajuster la liste d'articles WordPress Comment ajuster la liste d'articles WordPress Apr 20, 2025 am 10:48 AM

Il existe quatre façons d'ajuster la liste des articles WordPress: utilisez des options de thème, utilisez des plugins (tels que l'ordre des types de publication, la liste des publiques WP, des trucs boxy), utilisez du code (ajoutez des paramètres dans le fichier functions.php), ou modifiez directement la base de données WordPress.

Comment commencer un blog WordPress: un guide étape par étape pour les débutants Comment commencer un blog WordPress: un guide étape par étape pour les débutants Apr 17, 2025 am 08:25 AM

Les blogs sont la plate-forme idéale pour que les gens expriment leurs opinions, opinions et opinions en ligne. De nombreux débutants sont impatients de créer leur propre site Web, mais hésitent à s'inquiéter des obstacles techniques ou des problèmes de coûts. Cependant, comme la plate-forme continue d'évoluer pour répondre aux capacités et aux besoins des débutants, il commence maintenant à devenir plus facile que jamais. Cet article vous guidera étape par étape comment créer un blog WordPress, de la sélection de thème à l'utilisation des plugins pour améliorer la sécurité et les performances, vous aidant facilement à créer votre propre site Web. Choisissez un sujet et une direction de blog Avant d'acheter un nom de domaine ou d'enregistrer un hôte, il est préférable d'identifier les sujets que vous prévoyez de couvrir. Les sites Web personnels peuvent tourner autour des voyages, de la cuisine, des critiques de produits, de la musique ou de tout passe-temps qui suscite vos intérêts. Se concentrer sur les domaines qui vous intéressent vraiment peuvent encourager l'écriture continue

Comment afficher les catégories d'enfants sur la page des archives des catégories de parents Comment afficher les catégories d'enfants sur la page des archives des catégories de parents Apr 19, 2025 pm 11:54 PM

Voulez-vous savoir comment afficher les catégories d'enfants sur la page des archives de la catégorie parent? Lorsque vous personnalisez une page d'archive de classification, vous devrez peut-être le faire pour le rendre plus utile à vos visiteurs. Dans cet article, nous vous montrerons comment afficher facilement les catégories d'enfants sur la page des archives de la catégorie parent. Pourquoi les sous-catégories apparaissent-elles sur la page des archives de la catégorie des parents? En affichant toutes les catégories d'enfants sur la page des archives de la catégorie parent, vous pouvez les rendre moins génériques et plus utiles aux visiteurs. Par exemple, si vous exécutez un blog WordPress sur les livres et que vous avez une taxonomie appelée "thème", vous pouvez ajouter une sous-taxonomie telle que "roman", "non-fiction" afin que vos lecteurs puissent

Comment trier les messages par date d'expiration après WordPress Comment trier les messages par date d'expiration après WordPress Apr 19, 2025 pm 11:48 PM

Dans le passé, nous avons partagé comment utiliser le plugin PostExpirator pour expirer les publications dans WordPress. Eh bien, lors de la création du site Web de la liste d'activités, nous avons trouvé ce plugin très utile. Nous pouvons facilement supprimer les listes d'activités expirées. Deuxièmement, grâce à ce plugin, il est également très facile de trier les publications par date d'expiration du post. Dans cet article, nous vous montrerons comment trier les publications par date d'expiration post-expiration dans WordPress. Code mis à jour pour refléter les modifications du plugin pour modifier le nom du champ personnalisé. Merci Tajim de nous avoir fait savoir dans les commentaires. Dans notre projet spécifique, nous utilisons des événements comme types de publication personnalisés. Maintenant

Comment créer un site Web pour l'hôte WordPress Comment créer un site Web pour l'hôte WordPress Apr 20, 2025 am 11:12 AM

Pour créer un site Web à l'aide de WordPress Host, vous devez: sélectionner un fournisseur d'hébergement fiable. Acheter un nom de domaine. Configurez un compte d'hébergement WordPress. Sélectionnez un sujet. Ajoutez des pages et des articles. Installez le plug-in. Personnalisez votre site Web. Publiez votre site Web.

Comment automatiser WordPress et les médias sociaux avec IFTTT (et plus) Comment automatiser WordPress et les médias sociaux avec IFTTT (et plus) Apr 18, 2025 am 11:27 AM

Cherchez-vous des moyens d'automatiser votre site Web WordPress et vos comptes de médias sociaux? Avec l'automatisation, vous pourrez partager automatiquement vos articles de blog WordPress ou vos mises à jour sur Facebook, Twitter, LinkedIn, Instagram et plus encore. Dans cet article, nous vous montrerons comment automatiser facilement WordPress et les médias sociaux en utilisant IFTTT, Zapier et Uncanny Automator. Pourquoi automatiser WordPress et les médias sociaux? Automatiser votre wordpre

Comment afficher le nombre de requêtes et le temps de chargement de la page dans WordPress Comment afficher le nombre de requêtes et le temps de chargement de la page dans WordPress Apr 19, 2025 pm 11:51 PM

L'un de nos utilisateurs a demandé à d'autres sites Web comment afficher le nombre de requêtes et de temps de chargement dans le pied de page. Vous voyez souvent cela dans le pied de page de votre site Web, et il peut afficher quelque chose comme: "64 requêtes en 1,248 secondes". Dans cet article, nous vous montrerons comment afficher le nombre de requêtes et de temps de chargement de page dans WordPress. Collez simplement le code suivant partout dans le fichier de thème (par exemple Footer.php). requêtes

See all articles