Como exibir informações de perfil de usuário?


12

Quero criar uma página de perfil personalizada que exiba apenas os detalhes do usuário que fez login no meu site. Eu preciso mostrar

  • nome do usuário
  • nome
  • Email registrado

Também é possível criar campos personalizados, mas não no formulário de registro, somente quando eles fizerem login, eles poderão editar sua página de perfil.

Respostas:


24

Joomla: Acessando Informações do Usuário - O Objeto do Usuário

Para obter informações do usuário atual:

$user = JFactory::getUser();

Ele retornará o objeto de usuário .
Aqui, algumas das propriedades mais comuns do objeto Usuário:

  • Eu iria ($user->id)
  • nome ($user->name)
  • nome de usuário ( $user->username)
  • grupos ( $user->groups)
  • email ( $user->email).

Você pode verificar se o usuário está logado com o:

$user->guest; 

Você pode verificar os privilégios de acesso do usuário com o método authorize , por exemplo:

$user->authorise('core.admin', 'com_component')


Perfis de usuário

Para campos personalizados extras, isso depende do que você está tentando alcançar. Existe um plugin principal do Joomla "Perfil do Usuário" que contém muitos campos de perfil personalizados e que você pode personalizar ainda mais.


Atualização: Acessando os dados do perfil de usuário

jimport( 'joomla.user.helper' ); 
$user = JFactory::getUser();
$userId = $user->id; 
$userProfile = JUserHelper::getProfile( $userId );

echo "Main Address :" . $userProfile->profile['address1'];

Por outro lado, existem outras extensões de terceiros, como Community Builder, JomSocial, Easy Social, que permitem criar um site de comunidade de usuários, onde você pode ter usuários com informações de perfil estendidas. Se você não precisar criar uma comunidade, existem outras extensões que substituem / estendem o componente principal com_user ou elas funcionam em conjunto com ele e fornecem controle extra sobre o gerenciamento de usuários.

Mas como dito, isso depende do que você deseja fazer. Por exemplo, se você planeja criar um fórum, as extensões do fórum têm campos de perfil extras.

Obviamente, sempre existem soluções mais avançadas, como criar seu próprio componente ou aplicativo.


Ligações


2
Também há instruções aqui, docs.joomla.org/Creating_a_profile_plugin, sobre como personalizar o plug-in de perfil para outros campos
George Wilson

Basta lembrar de atualizar as consultas de banco de dados como o link fornecido acima usa padrões de codificação de idade: docs.joomla.org/Selecting_data_using_JDatabase
Lodder

Você sabe como recuperar informações de perfil?
cha

sim, verifique a resposta atualizada
FFrewin

7

@Lodder está correto. Se você deseja apenas alguns campos básicos, pode usar o plug-in Joomla User Profile, que vem com o próprio Joomla.

Se você deseja criar alguns campos personalizados, existem várias opções disponíveis, como Community Builder, JomSocial, EasySocial e outras soluções de rede socila. Mas se você não quiser a solução completa da comunidade, poderá procurar a extensão criada apenas para criação de perfil de usuário. O Joom Profile pode ser uma opção para você.


A versão gratuita ou paga do Easy perfil é outra opção boa: extensions.joomla.org/extensions/extension/...
Neil Robertson

5

Você realmente deve fazer alguma pesquisa antes de fazer uma pergunta como esta. 2 segundos no Google e você teria todas as informações necessárias.

Existe um plugin no perfil de usuário que acompanha o Joomla. No back-end do Joomla, vá para

Extensões (menu superior) >> Gerenciador de plug-ins >> Perfil do usuário .

Você verá os seguintes campos personalizados:

  • Endereço 1
  • Endereço 2
  • Região da cidade
  • País
  • Código postal
  • telefone
  • Local na rede Internet
  • Livro favorito
  • Sobre mim
  • Data de nascimento

Você pode escolher quais deseja na página de registro e perfil. Se esses campos não forem os que você procura, convém consultar o Community Builder . Essa extensão permite adicionar seus próprios campos personalizados e se integrar a outras extensões.


2
Acho sua primeira frase engraçada, pois esse é o primeiro resultado do Google para mim. Embora um pouco de informação redundante não faça mal a ninguém.
Ben Fleming

1
todo o ponto de perguntas como essa e as respostas fornecidas são uma fonte melhor de informações do que "coisas encontradas no google", por exemplo, postagens em blogs.
ROZZA

2

Além das respostas acima, você pode dar uma olhada em um plugin chamado Nice User Info . Ele pode exibir algumas informações do usuário quando o usuário está logado. Também está disponível uma versão gratuita, mas com funcionalidade limitada.

Para usá-lo, basta adicionar {niceuserinfo:usergroup}e suportar as seguintes informações:

  • ID do usuário
  • Nome completo
  • Nome do usuário
  • Endereço de e-mail
  • Nome (s) do grupo
  • ID (s) do grupo
  • data de registro
  • Data da Última Visita
  • Endereço IP do visitante
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.