Fazendo um Titulo de Usuário (viewtopic)

Encontre aqui diversos Tutoriais, Dicas e Truques para iniciantes e avançados em phpBB3.
Avatar do usuário
LucasLV
Moderador
Moderador
Mensagens: 711
Registrado em: 18 Out 2013, 04:40

Fazendo um Titulo de Usuário (viewtopic)

Mensagem por LucasLV »

Introdução
Em diversos fóruns pagos (como IPB, XenForo, vBulletin e WoltLab) existe a opção para usar o título de membro que nada mais é que uma frase ou palavra que seja, que o usuário escreva a ser mostrada estrategicamente em alguns pontos. Pode ser em cima ou abaixo do avatar. Pois é, phpBB não traz essa característica como nativa, mas isso não significa que não podemos fazer um. É simples e vou ensinar como fazer isso usando campo de perfil personalizado.

Criando o campo
Esta é a primeira etapa. Vamos usar o phpBB 3.2.0 como exemplo, mas as etapas se aplicam da exata maneira ao phpbb 3.1.X. Abaixo seguem as etapas. Se no momento que seguir este tutorial a tradução do português brasil ainda não estiver lançada o caminho em inglês também é especificado.

Navegue ao ACP > USUÁRIOS E GRUPOS > Campos de Perfil Personalizados (ACP > USERS AND GROUPS > Custom profile fields)

No rodapé da página, na caixinha, escreva o título do campo a ser identificado e neste caso chamaremos de titulo e escolha a opção Campo de texto individual (Single text field).

Imagem

Imagem

Após clicar e ir para a próxima etapa, é recomendável que você siga as instruções da imagem abaixo.

Imagem
Imagem
Imagem

Clique em Opções específicas ao tipo de perfil (Profile Type Specific option). Esta tela te dá as op~ções de escolher o tamanho da caixa em que o usuário digitará o titulo de usuário, o número mínimo e máximo de caracteres que poderão ser usados. Escolham a gosto.

Se você tiver mais de um idioma instalado, a próxima opção te dará a chance de traduzir o campo para outra lingua. Por fim, você clica em Salvar. Meio caminho andado, o campo já está lá no UCP epode ser usado, no entanto ele ainda se comporta como todos campos de perfis. Vamos posicioná-lo acima ou abaixo do avatar?

Posicionando o campo
Esta etapa exigirá uma simples rapida edição no template. É recomendado que você não faça isso no prosilver, mas sim num estilo herdado de prosilver, pois desta forma não terá dores de cabeça ao atualizar sua placa e perder todas as modiicações feitas.

Abra root/styles/seuestilo/template/viewtopic_body.html

ENCONTRE

Código: Selecionar todos

<!-- BEGIN custom_fields -->
			<!-- IF not postrow.custom_fields.S_PROFILE_CONTACT -->
SUBSTITUA COM:

Código: Selecionar todos

<!-- BEGIN custom_fields -->
		 <!-- IF not postrow.custom_fields.S_PROFILE_CONTACT and not postrow.custom_fields.S_PROFILE_TITULO -->
Explicação:: Esta condição fará com que o campo de perfil (PROFILE_TITULO) que criamos não seja exibido da forma habitual que é, dando a chance de posicionarmos ele em qualquer lugar da página.

ENCONTRE:

Código: Selecionar todos

<div class="avatar-container">
ADICIONE ABAIXO:

Código: Selecionar todos

<!-- IF postrow.S_PROFILE_TITULO --> 
					{postrow.PROFILE_TITULO_VALUE}<br><br><!-- ENDIF -->
Explicação:Este é o código que exibirá o titulo de usuário dos membros acima do avatar, e ao contrario de outros campos, ele só exibirá o valor que o usuario inserir e não seu nome.

Demonstrações:
Imagem
Imagem

Condições: exibir título de rank somente se o usuário não tiver um título de usuário definido
Dá pra deixar ainda melhor. Vamos por exemplo exigir ao phpBB que ele exiba o título de rank somente se o usuário não tiver definido um título de usuário no UCP.
Abra root/styles/seuestilo/template/viewtopic_body.html

ENCONTRE

Código: Selecionar todos

<!-- BEGIN custom_fields -->
			<!-- IF not postrow.custom_fields.S_PROFILE_CONTACT -->
SUBSTITUA COM:

Código: Selecionar todos

<!-- BEGIN custom_fields -->
		 <!-- IF not postrow.custom_fields.S_PROFILE_CONTACT and not postrow.custom_fields.S_PROFILE_TITULO -->
ENCONTRE:

Código: Selecionar todos

<!-- IF postrow.RANK_TITLE or postrow.RANK_IMG --><dd class="profile-rank">{postrow.RANK_TITLE}<!-- IF postrow.RANK_TITLE and postrow.RANK_IMG --><br /><!-- ENDIF -->{postrow.RANK_IMG}</dd><!-- ENDIF -->
SUBSTITUA COM:

Código: Selecionar todos

<!-- IF postrow.S_PROFILE_TITULO --> 
					<dd class="profile-rank">{postrow.PROFILE_TITULO_VALUE}</dd><!-- ELSE --><dd class="profile-rank">{postrow.RANK_TITLE}<!-- IF postrow.RANK_TITLE and postrow.RANK_IMG --><br /><!-- ENDIF -->{postrow.RANK_IMG}</dd><!-- ENDIF -->
Agora, o título de rank só será exibido se o usuário não tiver uum título de usuário.

DEMONSTRAÇÃO (com título de usuário definido em UCP)
Imagem

DEMONSTRAÇÃO (sem título de usuário definido em UCP - titulo de rank aparece)
Imagem

Após as modificações no template, não esqueça de apagar o cachê.
E é isso. Com um pouquinho de conhecimento você pode posicionar em lugares diferentes e usar outras condições tbm.

O próximo tutorial (quando tiver um tempo) será como fazer uma capa de perfil usando campos de perfil. :-)
// PRECISA DE UM TRABALHO PARA SEU SITE/FORUM? Contate-me...
eunaumtenhoid
Novato
Novato
Mensagens: 113
Registrado em: 12 Mai 2009, 04:26
Localização: No momento, aqui no forum suportephpbb
Contact:

Re: Fazendo um Titulo de Usuário (viewtopic)

Mensagem por eunaumtenhoid »

parabens parceiro muito bom mesmo
Minhas traduções das extensões mais usada no phpBB, para o português brasileiro:
https://github.com/phpBBTraducoes
nnr
Novato
Novato
Mensagens: 2
Registrado em: 13 Set 2017, 09:21

Re: Fazendo um Titulo de Usuário (viewtopic)

Mensagem por nnr »

Muito bom o tutorial, parabéns!
Trancado