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
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.)
I don’t understand which you mean by Category ID. Is the internal ID number of the category from which to take the posts of the user into account?
It should be much useful to be able to select several categories by its name, like in topic thumbnails TC.
It would be great to let each user to select from which categories he wants to show messages in his portfolio, overriding general default (if the admin allows it).
Another great improvement would be to add an option to let the admins select in the Component config which user groups can have a portfolio (based in level, or whatever admins stimate).
Another great addition It will be a great way to create a personal gallery not just from posts in has published in a category.
To get that, some kind of per user private category should be implemented, where users can create their posts and show them in the profile.
I think it can also be much more than just a user portfolio tab, it can be repurposed as almost anything you want to associate with users within the forum. The community I host is based on a policy/resource library and I’m using this component to show everyone which policies/resources were created by each user. I guess in a way that is a portfolio, but somehow the word implies something visual (especially given the integration with the topic thumbnail plugin/component and the image at the top of this thread).
With that flexibility in mind, it would be amazing to be able to change the URL slug (I’ve edited the title to Policies but the slug stays as u/user/activity/portfolio
It would also be great if the user_card_portfolio_link was hidden if the portfolio is empty.
Bug report: The .portfolio-link in the .user-nav needs to be wrapped in a <span>, so that the label text is hidden for tablet/mobile along with the other user-nav entries, otherwise it just sits there like a
Thanks for the feedback everyone !I’ve just made some updates to address some issues and add some features:
More than 1 category isn’t easily possible at the moment (though we’re working on some features for this in Discourse in general so maybe someday) — but I did notice that it was only working for 1 tag (despite the setting input allowing multiple)… so this update allows multiple tags to be used to populate the portfolio.
I’ve added a setting for this called portfolio_order so now you can choose created as an option as well.
I’ve added a setting called portfolio_route_name that will allow for this. Note that unless you know what you’re doing with URL encoding, it’s best to stick with a single word for this and avoid spaces and special characters.
I looked into implementing this, but there’s not a great way to do it. To know if it’s empty we’d have to fetch topics whenever someone’s usercard is opened, which is a little bit of a heavy request for a usercard (a plugin could do this in a much more efficient way by adding a field to the user data server-side with a simple count of portfolio topics)
First of all, thank you so much for taking the time to implement it. This would be such a hugely requested feature for our site. I just pulled the latest commit and changed the setting, but it doesn’t seem to be working. Is there anything I’m missing? Does Discourse need to be restarted?
Yes! Sorry, my bad, you’re absolutely correct. I’m using another plugin under the name of Topic List Thumbnails that unfortunately sometimes doesn’t wrap properly, making it seem out of order. But it’s working perfectly. Thanks so much again!