User Portfolio

:discourse2: Summary User Portfolio adds a new “Portfolio” tab to the user profile. It can be configured to show the user’s topics from a specific category and/or tag. It also works great alongside the Topic List Thumbnails
:hammer_and_wrench: Repository Link https://github.com/discourse/discourse-user-portfolio
:open_book: New to Discourse Themes? Beginner’s guide to using Discourse Themes

Install this theme component

Features

A portfolio button can optionally be added to user cards:

Screenshot 2020-07-03 at 10.02.07

Settings

Name Description
portfolio category Portfolio category ID. Set to 0 for all categories
portfolio tags Portfolio tags
portfolio icon Icon for portfolio tab and user-card-button
portfolio thumbnail style Thumbnail style for portfolio page (requires discourse-topic-thumbnails to be installed and added to the active theme)
user card portfolio link Display a portfolio link on user cards
portfolio order
portfolio route name name of the portfolio page in the URL, for example /u/username/activity/porfolio
Translation Default
portfolio Portfolio
empty_portfolio This portfolio is waiting to be filled
empty_portfolio_link Get started by adding topics to

:discourse2: Hosted by us? Theme components are available to use on our Standard, Business, and Enterprise plans.

Last edited by @JammyDodger 2024-06-16T13:35:05Z

Check documentPerform check on document:
46 curtidas

This is terrific! :partying_face:

4 curtidas

Fantastic component! I’ve long looked for something to make profiles more expressive.

However, thinking about implementing it, one thing is holding me back: I think it would be necessary for users to have more control over what appears on their portfolio. With edits and deletions of posts limited, that’s difficult.

Any idea how to solve this? (Making all posts in the portfolio category wikis could be a solution, though not ideal.)

2 curtidas

One option to give users more control is a ‘portfolio’ tag which they can apply to their posts. But you’re right, they can’t remove it later without edit privileges. Wikis are a good workaround.

Any changes to editing permissions wouldn’t be possible in a theme component, so we’d have to explore a core change or a plugin to make it possible.

6 curtidas

Actually this feature has been in the Topic List Previews plugin since Oct 2019 and was carried over into the TLP Theme Component:

https://meta.discourse.org/t/topic-list-previews/101646/660?u=merefield

8 curtidas

Hi David,

Is that possible somehow to add more category to filter the portfolio? I try to add more tags but it not work for me. If I set up category: 0 and add more tags the portfolio gone empty.

Thank you :slightly_smiling_face:

1 curtida

Ótimo componente.

Não entendi o que você quis dizer com ID da Categoria. É o número de ID interno da categoria da qual tirar as postagens do usuário para levar em consideração?

Seria muito útil poder selecionar várias categorias pelo nome, como nos miniaturas de tópicos TC.

Seria ótimo permitir que cada usuário selecionasse de quais categorias ele quer mostrar mensagens em seu portfólio, substituindo o padrão geral (se o administrador permitir).

Outra grande melhoria seria adicionar uma opção para que os administradores selecionem na configuração do Componente quais grupos de usuários podem ter um portfólio (com base no nível, ou o que os administradores estimarem).

Outra ótima adição Seria uma ótima maneira de criar uma galeria pessoal não apenas a partir de postagens em uma categoria.
Para conseguir isso, algum tipo de categoria privada por usuário deveria ser implementado, onde os usuários podem criar suas postagens e mostrá-las no perfil.

3 curtidas

Olá! Adorei o plugin, ele tem sido parte integrante do nosso site há anos.

No entanto, um problema: normalmente, conseguimos filtrar as postagens no site ordenando-as por data de criação em vez de data de resposta, utilizando os parâmetros para isso: ?order=created

O portfólio parece incapaz de replicar esse comportamento, embora eu tenha certeza de que, internamente, ele usa uma consulta simples que deveria ter acesso a esse recurso. Seria algo que você poderia adicionar?

3 curtidas

Componente incrível, obrigado!

Eu acho que ele pode ser muito mais do que apenas uma aba de portfólio de usuário, pode ser adaptado para quase qualquer coisa que você queira associar a usuários dentro do fórum. A comunidade que eu hospedo é baseada em uma biblioteca de políticas/recursos e estou usando este componente para mostrar a todos quais políticas/recursos foram criados por cada usuário. Acho que, de certa forma, isso é um portfólio, mas de alguma forma a palavra implica algo visual (especialmente dada a integração com o plugin/componente de miniatura de tópico e a imagem no topo deste tópico).

Com essa flexibilidade em mente, seria incrível poder alterar o slug da URL (editei o título para Políticas, mas o slug permanece como u/user/activity/portfolio)

Também seria ótimo se o user_card_portfolio_link fosse oculto se o portfólio estiver vazio.

3 curtidas

Concordo em ter nomes de categorias para selecionar, levei um tempo para encontrar o ID de uma subcategoria.

1 curtida

Relatório de bug: O .portfolio-link em .user-nav precisa ser envolvido por um <span>, para que o texto do rótulo seja ocultado em tablets/celulares junto com as outras entradas de user-nav, caso contrário, ele ficará lá como um :limão:

2 curtidas

Obrigado pelo feedback a todos! Acabei de fazer algumas atualizações para resolver alguns problemas e adicionar alguns recursos:

Mais de 1 categoria não é facilmente possível no momento (embora estejamos trabalhando em alguns recursos para isso no Discourse em geral, então talvez um dia) — mas notei que estava funcionando apenas para 1 tag (apesar de a entrada de configuração permitir várias)… então esta atualização permite que várias tags sejam usadas para popular o portfólio.

Adicionei uma configuração para isso chamada portfolio_order, então agora você também pode escolher created como opção.

Adicionei uma configuração chamada portfolio_route_name que permitirá isso. Observe que, a menos que você saiba o que está fazendo com a codificação de URL, é melhor usar uma única palavra para isso e evitar espaços e caracteres especiais.

Analisei a implementação disso, mas não há uma boa maneira de fazer. Para saber se está vazio, teríamos que buscar tópicos sempre que o cartão de usuário de alguém fosse aberto, o que é uma solicitação um pouco pesada para um cartão de usuário (um plugin poderia fazer isso de forma muito mais eficiente adicionando um campo aos dados do usuário no lado do servidor com uma contagem simples de tópicos do portfólio).

isso foi corrigido

3 curtidas

Em primeiro lugar, muito obrigado por dedicar seu tempo para implementá-lo. Este seria um recurso muito solicitado em nosso site. Acabei de baixar o último commit e alterei a configuração, mas não parece estar funcionando. Há algo que estou perdendo? O Discourse precisa ser reiniciado?
image

2 curtidas

Hmm, você não deveria precisar reiniciar (embora precise atualizar a página se ela já estiver aberta)

Funciona para mim no meu site de teste…

Por exemplo, ordenado pela atividade mais recente:

ordenado pelo mais recentemente criado:

2 curtidas

Sim! Desculpe, falha minha, você está absolutamente correto. Estou usando outro plugin chamado Topic List Thumbnails que, infelizmente, às vezes não se ajusta corretamente, fazendo com que pareça fora de ordem. Mas está funcionando perfeitamente. Muito obrigado novamente!

2 curtidas

Obrigado por todas essas correções, incrível!

Quais são as opções para fazer um plugin assim, isso é algo que seria considerado pelo Discourse ou devo apenas postar um tópico no marketplace, ou outra coisa?

3 curtidas

É possível adicionar uma segunda categoria neste momento?

Além disso, como poderíamos implementar portfólios “múltiplos”? Por exemplo, gostaríamos de ter uma aba de portfólio geral para todos os usuários. Mas para nossos usuários B2B, gostaríamos de adicionar uma aba “Produtos” em vez disso.

Podemos nos interessar em financiar esses recursos se a implementação não for muito complexa.

1 curtida

Seria interessante se isso cobrisse outro caso de uso:

Este ótimo plugin, mas mal comercializado, dá às pessoas controle sobre os tópicos que criam, para que possam acompanhar conteúdo como projetos DIY e assim por diante. Outros usuários podem comentar nas threads, mas seus comentários são reduzidos em escopo, de modo que ficam dobrados abaixo de cada entrada.

Seria legal se seu plugin pudesse extrair de várias entradas na mesma thread, não apenas de uma imagem de nível superior. Em outras palavras, para construir o portfólio, ele poderia usar todas as imagens de uma thread, ou apenas as primeiras e últimas entradas, e assim por diante.

4 curtidas

Estamos, na verdade, usando um plugin feito sob medida que usa a última imagem postada pelo autor do tópico como miniatura. Nós o usamos principalmente com miniaturas na lista de tópicos, mas o portfólio do usuário tc deve ser afetado da mesma forma.

@RGJ podemos abrir o plugin para uso público?

3 curtidas

Está aqui GitHub - communiteq/discourse-topic-thumbnail-recent-post
Observe que ele funciona apenas para tópicos de diário.

3 curtidas