web-dev-qa-db-fra.com

Est-il possible d'obtenir des métadonnées post de page de renvoi?

J'essaie de diriger un script d'autorisation php pour agir si la page qui y fait référence appartient à une certaine catégorie (gratuite).

Y at-il autre chose que <?php wp_get_referer() ?> qui renverra plus que l'URL? J'ai essentiellement besoin d'obtenir l'identifiant du référent.

4
psorensen

url_to_postid(wp_get_referer()) vous donnera l'ID de la page/du post de renvoi si vous avez été référé à partir d'une page ou d'un post. Cela ne fonctionnera pas s'il est référencé à partir d'autres types de pages, telles que des archives.

Vous devrez ensuite récupérer les catégories de l'ID pour voir si elles correspondent.

J'envisagerais fortement de passer un paramètre avec la demande cependant. Vous devriez déjà avoir l'ID de publication et éventuellement les données de publication sur la page de renvoi et vous n'aurez pas à faire de requêtes distinctes pour la récupérer.

Vous pouvez utiliser un nonce pour éviter les abus du paramètre, c’est-à-dire pour empêcher une personne de saisir simplement ?status=free dans l’URL.

Vous mentionnez les sessions dans un commentaire. J'ai utilisé des sessions avec succès dans WordPress et avec peu de problèmes. Sachez que beaucoup de gens se plaignent de sessions avec WordPress.

Voir:

http://codex.wordpress.org/Function_Reference/url_to_postid

6
s_ha_dum