Quel est le moyen le plus sûr de vérifier/configurer les cookies avant que les en-têtes php ne soient envoyés? Existe-t-il une action ou un filtre qui conviendrait le mieux pour associer une fonction setcookie()
?
Cela dépend si vous devez ou non vérifier l'authentification de l'utilisateur WordPress. Si vous avez besoin de savoir s’il s’agit d’un utilisateur connecté, connectez-vous à 'init'
. Sinon, le plus tôt sera le mieux.
Si c'est quelque chose qui devrait se déclencher à chaque chargement de page, et ne vérifie que l'existence du cookie et n'a pas besoin de puiser dans les API de WP, je le mettrais dans un plug-in MU personnalisé nommé 0000a.php
pour s'assurer qu'il se déclenche avant que des fichiers non essentiels puissent envoyer accidentellement des en-têtes.
Je pense que functions.php
est définitivement traité avant toute sortie et convient parfaitement aux extensions.
Quant à hook, peut-être after_setup_theme
, il vient juste après.
Vous pouvez créer une fonction pour vérifier ou définir un cookie, mais vous devez vérifier le fichier wp-config.php, car si vous utilisez une redirection, le fichier sera accessible directement avant index.php sur la redirection.
Il s'agit d'un plugin écrit par Mark Jaquith Age Check qui oblige l'utilisateur à remplir un formulaire de vérification de l'âge avant d'accéder au site. Je l'ai modifié pour un liqueur, bière, site web j'ai fait.
if ( !defined( 'ABSPATH' ) ) { // we're being called directly, to check the cookie
if ( file_exists('../../wp-config.php') )
include('../../wp-config.php');
elseif ( file_exists('../../../wp-config.php') )
include('../../../wp-config.php');
else
die('Could not find wp-config.php');
Une meilleure façon pourrait exister maintenant. Le plugin a été écrit il y a plus d'un an.