Maison > Tutoriel CMS > WordPresse > Le guide complet de l'API des transitoires WordPress

Le guide complet de l'API des transitoires WordPress

尊渡假赌尊渡假赌尊渡假赌
Libérer: 2025-02-17 12:19:09
original
291 Les gens l'ont consulté

L'API Transients de WordPress est prise en charge depuis la version 2.8, mais de nombreux développeurs WordPress ignorent toujours son existence et son objectif. En bref, l'API WordPress Transients nous permet de stocker des données de paire de valeurs clés avec des temps d'expiration.

Ce tutoriel expliquera en profondeur comment utiliser cette API. Nous apprendrons également en quoi il diffère de l'API d'options, comment il interagit avec le système de mise en cache WordPress et certains cas d'utilisation.

The Complete Guide to the WordPress Transients API ### Comparaison des options API et transitoires API

La plupart des développeurs WordPress comprennent l'API des options WordPress. L'API Options nous permet de stocker en permanence les données de paire de valeurs clés dans la base de données. Ce que de nombreux développeurs WordPress ne réalisent pas, c'est que l'API d'options implémente une couche de mise en cache (c'est-à-dire le cache d'objet WordPress) pour cache. Si la mise en cache persistante n'est pas activée, une nouvelle session de cache est créée pour chaque demande HTTP, sinon l'API Options utilisera la mise en cache persistante.

Presque chaque API WordPress utilise le cache d'objet WordPress pour interagir avec MySQL pour mettre en cache les données pour empêcher plusieurs requêtes MySQL.

L'API transitoires fonctionne légèrement différemment de toutes les autres API. Il stocke les données de paire de valeurs clés dans MySQL uniquement si le cache persistant n'est pas activé, sinon il n'utilise que le cache d'objet. Et toutes les autres API utilisent les deux pour synchroniser les données pour assurer la persistance des données. Par conséquent, les transitoires ne sont pas persistants, c'est-à-dire qu'ils ne doivent pas être utilisés pour stocker des données critiques. Par conséquent, l'API transitoires est idéal pour la mise en cache des données.

Remarque: Si la mise en cache persistante n'est pas activée, l'API Transients utilise l'API Options pour stocker les données de paire de valeurs de clé, sinon elle utilise directement le cache d'objet. Les transitoires sont stockés dans le tableau des options. Chaque transitoire se compose de deux options, à savoir les données de paire de valeurs clés et la date d'expiration de la paire de valeurs clés.

Créer un transitoire

Pour définir Transient, nous devons utiliser la fonction set_transient(). Cette fonction prend trois paramètres:

  1. Nom transitoire (requis): doit être une chaîne. La longueur de chaîne ne peut pas dépasser 40 caractères, sinon le transitoire ne sera pas créé.
  2. Valeur transitoire (requise): doit être une chaîne. Si vous passez un objet ou un tableau, il est sérialisé, c'est-à-dire converti en chaîne.
  3. secondes expirées (facultative): le nombre de secondes dans lesquelles le transitoire expirera. Le transitoire peut également expirer avant le temps d'expiration car les données mises en cache (c'est-à-dire les données stockées dans le cache d'objet) sont volatiles.

Ce qui suit est un exemple de code utilisant la fonction set_transient():

set_transient("Website", "SitePoint", 3600);
Copier après la connexion
Copier après la connexion

Ici, nous stockons la clé nommée "Site Web" avec la valeur avec la valeur "SitePoint" pendant 1 heure. Après 1 heure, cette clé ne sera plus accessible.

set_transient Renvoie True si le transitoire est créé avec succès, sinon renvoyez false.

Si vous ne fournissez pas de temps d'expiration ou ne fournissez pas "0" en tant que temps d'expiration, il n'expirera jamais transitoire.

Remarque: Si le temps d'expiration n'est pas fourni ou si le temps d'expiration est "0", les transitoires seront chargés automatiquement (c'est-à-dire qu'il sera chargé en mémoire lorsque la page sera demandée).

L'API

transitoires fournit également une autre fonction pour créer des transitoires, c'est-à-dire set_site_transient. Il prend également les trois mêmes paramètres que set_transient. La plupart des fonctions sont les mêmes entre elles. La différence entre set_transient et set_site_transient est:

  1. Lorsque set_site_transient est utilisé dans un réseau multi-sites, le transitoire peut être utilisé pour tous les sites du réseau.
  2. Les transitoires
  3. créés avec set_site_transient sont toujours chargés automatiquement quel que soit le temps d'expiration.

Enfin, si vous exécutez set_transient de la clé transitoire existante, la valeur et le temps d'expiration seront mis à jour à la valeur nouvellement fournie et au temps d'expiration. Le temps d'expiration est calculé à partir du premier transitoire.

Rechercher transitoire

Pour récupérer le transitoire stocké, vous devez utiliser la fonction get_transient. Il n'accepte qu'un seul paramètre, à savoir le nom de transitoire.

set_transient("Website", "SitePoint", 3600);
Copier après la connexion
Copier après la connexion

Si Transient a expiré ou n'existe pas, get_transient renvoie false. Sinon, il renvoie la valeur du transitoire.

Si le transitoire a expiré ou non trouvé, false est renvoyé, vous ne devez donc jamais stocker les valeurs booléennes en transitoire. Si vous souhaitez stocker des valeurs booléennes, utilisez une forme entière, c'est-à-dire 0 ou 1.

Si vous avez déjà défini transitoire avec set_site_transient, utilisez get_site_transient pour le récupérer, pas get_transient.

Supprimer le transitoire

Pour supprimer transitoire, vous devez utiliser la fonction delete_transient. Il n'accepte qu'un seul paramètre, à savoir le nom de transitoire.

Ceci est un exemple:

$value = get_transient("Website");

if($value === false)
{
    echo "Expired or not found";
}
Copier après la connexion

Retour True si Transient est supprimé avec succès. Si le transitoire n'est pas trouvé ou si le transitoire ne peut pas être supprimé pour d'autres raisons, FALS est renvoyé.

Si vous avez déjà défini transitoire avec set_site_transient, utilisez delete_site_transient pour le supprimer, pas delete_transient.

récupérer et cache des publications dans des catégories spécifiques

L'API transitoires peut être utilisée pour tout cacher. La plupart des plugins utilisent cette API pour mettre en cache les données. Pour illustrer, voyons comment récupérer et mettre en cache des articles dans les catégories.

delete_transient("Website");
Copier après la connexion

Ici, nous mettons en cache les articles de catégorie pendant 1 heure. Nous utilisons la classe WP_Query pour récupérer les publications. WP_Query est sérialisé et stocké comme transitoire. Lorsqu'il est récupéré, il est désérialisé.

Résumé

Cet article montre comment nous pouvons facilement mettre en cache les données dans WordPress à l'aide de l'API Transients.

Vous pouvez activer la mise en cache persistante dans WordPress à l'aide du cache d'objet Memcached ou du plugin WP Redis.

Veuillez me dire votre expérience en utilisant cette API dans les commentaires ci-dessous.

FAQs sur l'API des transitoires WordPress (FAQ)

Quel est le but principal de l'utilisation de l'API WordPress Transients?

L'objectif principal de l'utilisation de l'API WordPress Transients est de stocker des données temporaires, ce qui aide à accélérer les sites Web WordPress. Il permet aux développeurs de stocker des données avec un temps d'expiration. Ces données peuvent être n'importe quoi, des résultats de la requête de la base de données complexes aux valeurs de chaîne simples. En stockant ces données, votre site Web WordPress peut rapidement les récupérer sans les régénérer à chaque fois, en améliorant les performances de votre site Web.

Comment l'API WordPress Transients améliore-t-il les performances du site Web?

L'API WordPress Transients améliore les performances du site Web en réduisant le nombre de requêtes de base de données. Lorsque vous utilisez l'API Transients pour stocker les données, il peut être récupéré rapidement à partir du cache sans effectuer de nouvelles requêtes de base de données. Cela réduit considérablement la charge sur le serveur et accélère le temps de chargement de la page, offrant ainsi une meilleure expérience utilisateur.

Puis-je utiliser l'API WordPress Transients pour le stockage de données persistantes?

Non, l'API WordPress Transients n'est pas conçu pour le stockage permanent de données. Les données stockées à l'aide de l'API transitoires sont temporaires et ont un temps d'expiration. Une fois les données expirées, elles seront automatiquement supprimées du cache. Si vous devez stocker des données en permanence, vous devez utiliser une autre API WordPress, telle que l'API Options.

Comment supprimer transitoire dans WordPress?

Vous pouvez utiliser la fonction delete_transient pour supprimer transitoire dans WordPress. Cette fonction prend le nom de transitoire comme paramètre. Voici un exemple:

delete_transient( 'my_transient' );

Dans cet exemple, "my_transient" est le nom du transitoire à supprimer.

Que se passe-t-il si j'essaie de récupérer un transitoire expiré?

Si vous essayez de récupérer un transitoire expiré, l'API WordPress Transients Renvoie False. En effet, les données seront automatiquement supprimées du cache une fois qu'elles expireront. Vous devez toujours vérifier si le transitoire est toujours valide avant d'essayer d'utiliser les données.

Puis-je définir Transient pour ne jamais expirer?

Bien que vous puissiez techniquement définir transitoire pour ne jamais expirer en lui donnant un très long temps d'expiration, cela n'est pas recommandé. Les transitoires sont utilisés pour le stockage temporaire des données, le régler pour ne jamais expirer peut provoquer une accumulation de données inutile dans le cache.

Comment gérer et supprimer les transitoires dans WordPress?

Vous pouvez gérer et supprimer les transitoires dans WordPress à l'aide de divers plug-ins tels que Transient Manager, WP-Optimize et Transients Manager. Ces plugins fournissent une interface conviviale pour afficher, supprimer et gérer tous les transitoires.

Puis-je utiliser l'API WordPress Transients dans une installation multi-sites?

Oui, vous pouvez utiliser l'API WordPress Transients dans une installation multi-sites. Cependant, vous devez utiliser les fonctions set_site_transient et get_site_transient au lieu de set_transient et get_transient. Ces fonctions peuvent être utilisées dans tout le réseau de sites.

Quelle est la différence entre les transitoires et les cookies?

Les transitoires et les cookies utilisent différemment. Le transitoire est utilisé pour stocker des données temporaires du côté serveur pour améliorer les performances du site. D'un autre côté, les cookies sont utilisés pour stocker des données du côté du client et sont généralement utilisés pour se souvenir des préférences et des sessions des utilisateurs.

Puis-je stocker des tableaux ou des objets en utilisant l'API WordPress Transients?

Oui, vous pouvez utiliser l'API WordPress Transients pour stocker des tableaux ou des objets. L'API sérialise automatiquement ces types de données pour vous, vous pouvez donc les stocker sous forme de transitoires et les récupérer plus tard sans aucun problème.

Cette sortie révisée maintient la signification d'origine tout en utilisant différentes structures de libellé et de phrases.

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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal