Como falsificar um login no Wordpress?

4

Como muitos de vocês sabem, WPEngine não suportam PHP SESSIONS a menos que o usuário esteja logado Nesse caso, o WPEngine começa a considerar o PHP SESSIONS e o software baseado em hybridauth como Login social do Wordpress ou Convites sociais do Wordpress funcionará ok.

Então, minha pergunta é: Existe uma maneira de falsificar um login no Wordpress?

    
por chifliiiii 10.07.2013 / 21:25

2 respostas

2

Você pode criar um usuário simulado (sem direitos) e fazer login em cada visitante usando esse usuário simulado. Isso pode ser feito facilmente:

wp_set_auth_cookie($uid, true);
wp_set_current_user($uid);

Mas, na minha opinião, essa é uma solução bastante falha.

Seu principal problema é que todas as páginas para usuários não logados vêm do cache de páginas. Isso também significa que todos os usuários obtêm a mesma saída html, desde que haja o cache de página ativo. Portanto, não pode haver nenhuma diferença nas suas páginas com base no visitante. Todos os visitantes recebem o mesmo resultado.

A melhor maneira seria criar um ticket no WPEngine e solicitar que ele desativasse o cache de páginas do seu site. Essa é também a maneira que eles sugerem na página que você vinculou.

    
por s1lv3r 10.07.2013 / 22:58
1

Uma solução rápida e hacky é colocar isso no seu arquivo de cabeçalho:

<?php
  // Re-enable sessions for WPEngine
  setcookie('wordpress_logged_in_' . md5("test"), md5("random"), time()+3600);
?>

Está errado, mas funciona.

    
por Jayme Brereton 24.07.2014 / 04:05

Tags