Usando o wp_set_auth_cookie para o sistema de conta de usuário personalizado

4

Eu criei um sistema de conta de usuário personalizado usando um tipo de postagem personalizado. Eu queria saber se é seguro usar a função interna wp_set_auth_cookie($user_id, $remember, $secure) Wordpress usa para o sistema de usuário interno. Por $user_id eu percebi que poderia usar o ID do post. Mas isso não colidiria com o sistema existente? Existe um truque bacana para impedir que os cookies de usuário padrão entrem em conflito com os cookies de usuários personalizados ou não devo usar essa função?

    
por Joren 11.10.2013 / 14:34

1 resposta

4

Por que você está construindo um sistema de usuário separado em primeiro lugar? O sistema interno do wordpress é bastante flexível.

Em teoria, todas as funções de login como wp_set_auth_cookie (), wp_generate_auth_cookie (), wp_parse_auth_cookie () etc. são todas funções conectáveis . O que significa que você pode substituí-los por suas próprias funções personalizadas.

Mas para ser realista, será muito trabalhoso conseguir isso funcionando, já que você não poderá usar o wp_set_auth_cookie() padrão, desde que substitua todas as funções de login, ou sincronize sua base de usuários virtual com o real. wp_users table.

A função padrão não irá definir um cookie de login válido, a menos que ache que $user_id é um usuário real do wordpress.

Acho que suas melhores opções são:

  • Reescreva seu sistema de login para usar usuários reais em vez de seu CPT e armazene suas coisas personalizadas em user_meta.
  • Sincronize seus usuários de CPT com usuários reais (crie um usuário real para cada postagem de seu CPT).
  • Crie seu próprio sistema de login, deixe-o totalmente separado dos usuários do wordpress e crie o auth_cookies você mesmo.
por s1lv3r 11.10.2013 / 14:50

Tags