Mostrar o "Autor do tópico"

5 participantes

Ver o tópico anterior Ver o tópico seguinte Ir para baixo

Tópico resolvido Mostrar o "Autor do tópico"

Mensagem por LucianoMicle 15.05.21 6:12

Detalhes da questão


Endereço do fórum: https://luciano.foroactivo.com/
Versão do fórum: phpBB3

Descrição


Boa noite-

Como posso adicionar este estilo ao "criador do tema" para os usuários que criam as mensagens, algo semelhante a este exemplo aparece:
-
Spoiler:
-
Saudações
LucianoMicle

LucianoMicle
****

Masculino
Membro desde : 07/09/2019
Mensagens : 239
Pontos : 357

Ver perfil do usuário https://divtes.foroactivo.com/ https://www.facebook.com/facebook.com/lucianomicleok https://twitter.com/twitter.com/lucianomicleok

Ir para o topo Ir para baixo

Tópico resolvido Re: Mostrar o "Autor do tópico"

Mensagem por while 16.05.21 1:06

Saudação, me forneça seu viewtopic_body por gentileza.
while

while
Membro Entusiasta

Masculino
Membro desde : 24/04/2016
Mensagens : 3263
Pontos : 4761

Ver perfil do usuário http://www.ajuda.forumeiros.com https://www.facebook.com/profile.php?id=100012157981279

Ir para o topo Ir para baixo

Tópico resolvido Re: Mostrar o "Autor do tópico"

Mensagem por LucianoMicle 16.05.21 1:27

Spoiler:
LucianoMicle

LucianoMicle
****

Masculino
Membro desde : 07/09/2019
Mensagens : 239
Pontos : 357

Ver perfil do usuário https://divtes.foroactivo.com/ https://www.facebook.com/facebook.com/lucianomicleok https://twitter.com/twitter.com/lucianomicleok

Ir para o topo Ir para baixo

Principal Contribuidor

Tópico resolvido Re: Mostrar o "Autor do tópico"

Mensagem por Shek 24.05.21 20:43

Olá, e boa tarde.

Eu podia dizer que "não é possível", mas com jQuery é sim, possível. Contudo, não consigo fazer com que o script abaixo exiba o "Autor do tópico" como na imagem. Ele percorre todos os posts e encontra se aquele post é do autor, mas infelizmente não consigo exibir o ícone. Se alguém souber, deixo minha sugestão:
Código:
$(document).ready(function() {
   var obterAutor = $('.post:eq(0) p.author').find('a').text();
   $('.post .postprofile strong').each(function(index,element) {
      if($(this).text() == obterAutor) {
         $('.post .postprofile strong').each(function(index,element) {
            // Continuação
         });
      }
   });
});
Pode parecer uma resposta inútil, mas se alguém que entende melhor de jQuery do que eu tiver uma "base", talvez seja mais fácil de executar o que o autor deseja.

Atenciosamente,
Shek King
Shek

Shek
Principal Contribuidor
Principal Contribuidor

Masculino
Membro desde : 11/04/2009
Mensagens : 18763
Pontos : 22612

Ver perfil do usuário https://publipos.net https://www.facebook.com/ShiftActif https://twitter.com/ShiftActif

Ir para o topo Ir para baixo

Membro Proficiente

Tópico resolvido Re: Mostrar o "Autor do tópico"

Mensagem por Luiz 24.05.21 21:31

Realmente, @Shek, é possível. Feliz

Não vou mexer com CSS, mas deixo aqui um protótipo do JavaScript.

Código:
(function ($) {
  'use strict';

  function getPostAuthorUsername($post) {
    return $post.find('.postprofile > div strong').text().trim();
  }

  $(function () {
    var topicAuthor = getPostAuthorUsername($('.post:first'));

    $('.post')
      .filter(function (index) {
        if (index === 0) return false; // Comente esta linha se quiser mostrar no primeiro post também.
        return getPostAuthorUsername($(this)) === topicAuthor;
      })
      .each(function () {
        $(this)
          .find('.postprofile')
          .prepend(
            [
              '<div class="topic-author-badge">',
              '  Autor do Tópico',
              '</div>'
            ].join('\n')
          );
      });
  });
})(jQuery);


Última edição por pedxz em 25.05.21 20:44, editado 3 vez(es) (Motivo da edição : alterar seletor e invocar código somente mediante à DOMContentLoaded (obrigado, pedxz))
Luiz

Luiz
Membro Proficiente
Membro Proficiente

Masculino
Membro desde : 23/04/2016
Mensagens : 6644
Pontos : 7447

Ver perfil do usuário https://luizfelipe.dev

Ir para o topo Ir para baixo

Principal Contribuidor

Tópico resolvido Re: Mostrar o "Autor do tópico"

Mensagem por Shek 24.05.21 21:34

Maravilhoso, Luiz! Não cheguei perto da solução apresentada, mas é bom para um tutorial futuro, assim como para aprendizado. Obrigado.
Shek

Shek
Principal Contribuidor
Principal Contribuidor

Masculino
Membro desde : 11/04/2009
Mensagens : 18763
Pontos : 22612

Ver perfil do usuário https://publipos.net https://www.facebook.com/ShiftActif https://twitter.com/ShiftActif

Ir para o topo Ir para baixo

Tópico resolvido Re: Mostrar o "Autor do tópico"

Mensagem por LucianoMicle 24.05.21 22:29

Oi!
Eu não estaria aparecendo nos temas criados.
LucianoMicle

LucianoMicle
****

Masculino
Membro desde : 07/09/2019
Mensagens : 239
Pontos : 357

Ver perfil do usuário https://divtes.foroactivo.com/ https://www.facebook.com/facebook.com/lucianomicleok https://twitter.com/twitter.com/lucianomicleok

Ir para o topo Ir para baixo

Admineiro

Tópico resolvido Re: Mostrar o "Autor do tópico"

Mensagem por pedxz 25.05.21 19:11

Olá
@LucianoMicle,

LucianoMicle escreveu:Eu não estaria aparecendo nos temas criados.
O código em cima acabou de ser adaptado para o seu fórum.


Atenciosamente,
pedxz.
pedxz

pedxz
Admineiro
Admineiro

Membro desde : 13/01/2017
Mensagens : 7276
Pontos : 8525

Ver perfil do usuário

Ir para o topo Ir para baixo

Tópico resolvido Re: Mostrar o "Autor do tópico"

Mensagem por LucianoMicle 25.05.21 19:22

Ola @pedxz
Tente os dois códigos acima, mas eles não funcionam para mim.
LucianoMicle

LucianoMicle
****

Masculino
Membro desde : 07/09/2019
Mensagens : 239
Pontos : 357

Ver perfil do usuário https://divtes.foroactivo.com/ https://www.facebook.com/facebook.com/lucianomicleok https://twitter.com/twitter.com/lucianomicleok

Ir para o topo Ir para baixo

Admineiro

Tópico resolvido Re: Mostrar o "Autor do tópico"

Mensagem por pedxz 25.05.21 20:52

Editei o código em cima. Altere novamente!

Adicione na sua folha de estilo o seguinte estilo:
Código:
.topic-author-badge {
    display: inline-block;
    box-sizing: border-box;
    font-weight: 500;
    font-size: 11px;
    text-transform: uppercase;
    font-family: inherit;
    padding-left: 10px;
    padding-right: 10px;
    background-color: #2e2c2c;
    border-radius: .2rem;
    margin-bottom: .75rem;
    margin-top: .75rem;
    color: #f2f1f1;
    border: 1px solid transparent;
    text-shadow: 1px 1px 4px rgba(0,0,0,0.2);
    user-select: none;
}

Demonstração:
Mostrar o "Autor do tópico"  O6ELB9C
pedxz

pedxz
Admineiro
Admineiro

Membro desde : 13/01/2017
Mensagens : 7276
Pontos : 8525

Ver perfil do usuário

Ir para o topo Ir para baixo

Tópico resolvido Re: Mostrar o "Autor do tópico"

Mensagem por LucianoMicle 26.05.21 3:47

funcionou corretamente, muito obrigado
LucianoMicle

LucianoMicle
****

Masculino
Membro desde : 07/09/2019
Mensagens : 239
Pontos : 357

Ver perfil do usuário https://divtes.foroactivo.com/ https://www.facebook.com/facebook.com/lucianomicleok https://twitter.com/twitter.com/lucianomicleok

Ir para o topo Ir para baixo

Admineiro
  • 0

Tópico resolvido Re: Mostrar o "Autor do tópico"

Mensagem por pedxz 26.05.21 7:10

Obrigado @Luiz e @Shek Venerar


Tópico resolvido


Movido para "Questões resolvidas".
pedxz

pedxz
Admineiro
Admineiro

Membro desde : 13/01/2017
Mensagens : 7276
Pontos : 8525

Ver perfil do usuário

Ir para o topo Ir para baixo

Ver o tópico anterior Ver o tópico seguinte Ir para o topo

- Tópicos semelhantes

Permissões neste sub-fórum
Não podes responder a tópicos