Estou tentando definir cookies para redirecionar os usuários que retornam para uma página específica no meu site do Wordpress.
Eu gostaria de alguns conselhos com estas 2 coisas:
- Onde nos arquivos php do Wordpress os cookies devem ser verificados antes de carregar qualquer conteúdo para manipular um redirecionamento? Existe um bom arquivo em que isso exista sobre outros?
- Como faço para definir corretamente um cookie no Wordpress?
setcookie('cookie_name', 'cookie_value', time()+4000);
parece não estar salvando nenhum cookie no meu sistema.
Respostas:
1 - Você pode verificar se há cookies e redirecionar usando ganchos chamados antes de qualquer saída como o gancho 'init':
2 - A melhor maneira de definir cookies seria usando o gancho 'init' assim:
Isso é mais consistente. Se você possui um blog em www.example.com/blog , o (s) coockie (s) não estará disponível em
Atualizar
fonte
setcookie()
COOKIEPATH
eCOOKIEDOMAIN
constantes ao invés de descobrir-los você mesmo, que eu só notei em Andre R Kohl respostaCOOKIE_DOMAIN
Você provavelmente deve usar as constantes
COOIKEPATH
eCOOKIE_DOMAIN
, existentes desde o WP 3.0fonte
Ah, percebi que precisava conectar isso ao
init()
.SOLUÇÃO: Criei uma função no functions.php que definiria e verificaria o cookie. para que isso funcione corretamente, após definir a função, fora da função, chame isto:
fonte
Desta forma funcionou:
fonte