Tagging users (with interests/passions/skills etc)


#1

Continuing the discussion from Introducing the Staff Notes Plugin:

I’m really keen to find a way to tag users with interests/skills/passions so that I can pull people into relevant discussions.

I had hoped to use the staff notes plugin, but it’s not working out, so I’m wondering about the logistics of custom profile fields. How easy is it to pull that data?

Or perhaps a more appropriate question would be how would others approach this?


(Dave McClure) #2

A couple other hacks I can think of (which may or may not meet your needs):

  • groups
  • custom badges

#3

Thanks David – I’ve considered both. Groups is pretty limiting (I have to generalise to put people into one of x number of groups, rather than being to tag them with anything) although it is probably the most feasible option right now.

I’m generally against badges because they imply a level of expertise that not everyone is comfortable with. There are other connotations (not just categories of interest).

Ideally, I don’t want people to see the notes at all, but I’m aware that I might have to compromise on that. I currently use a spreadsheet that I manually search through, but I’d rather it was integrated somehow.


(Mittineague) #4

Well, that was fun.
What would have taken Rudy a heartbeat and a breath to put together …

On my localhost I had 4 Staff create a Staff Note starting with a made up “short code” on 4 different members.

~SHINING STAR~
This member has potential, lets keep an eye on them

Because the Profile Notes plugin created private messages I looked there - Nope
Staff Notes uses a different table
That table has no connection to the user the Staff Note was attached to except as the id as part of a string.
(some tricky stuff was needed, I’ll get better at Postgres yet)

This query

WITH psr AS (
 SELECT regexp_matches(plugin_store_rows.key, '[0-9]+') AS psr_key_value
   , plugin_store_rows.plugin_name AS psr_plugin_name
   , plugin_store_rows.value AS psr_value
 FROM plugin_store_rows
)
SELECT users.id 
 , users.username
 , psr.psr_value
FROM users 
JOIN psr
ON
 users.id = CAST (array_to_string(psr.psr_key_value, '') AS int)
WHERE 
  psr.psr_plugin_name LIKE 'staff_notes'
AND  
  psr.psr_value LIKE '%~SHINING STAR~%' 

gave me

id 	username 	psr_value
11	TestUser1	[{"id":"40ce59592f6b5c81a692845cdbb0f9d4","user_id":11,"raw":"~SHINING STAR~\nThis member has potential, lets keep an eye on them","created_by":2,"created_at":"2016-04-04T21:00:20.055-04:00"}]
31	RegularGal1	[{"id":"327c342266b2efa7d1530aba02811056","user_id":31,"raw":"~SHINING STAR~\nThis member has potential, lets keep an eye on them","created_by":9,"created_at":"2016-04-04T21:09:15.413-04:00"}]
7	RegularGuy1	[{"id":"eeb581c3ff772ffdc476ea09c0dce156","user_id":7,"raw":"~SHINING STAR~\nThis member has potential, lets keep an eye on them","created_by":3,"created_at":"2016-04-04T21:03:09.804-04:00"}]
30	MemberGal1	[{"id":"73da2850045782a9fdb9d9ec7341d3a0","user_id":30,"raw":"~SHINING STAR~\nThis member has potential, lets keep an eye on them","created_by":34,"created_at":"2016-04-04T21:05:59.993-04:00"}]

#5

Allan! You’re such a star. Thanks so much. I’ll give it a run tomorrow and see how I go.
Really appreciate it.

Edit: works like a charm.


(Alessio Fattorini) #6

I’m really interested in this feature, my goals as community guy are pretty similar to @HAWK
Mentioning people into relevant discussions to them and where they can add a unique contribution is super important as external trigger, it keeps people still around the community and encourages to participate


(Robert McIntosh) #7

great - I would love to see this too. I am involved in a number of community sites and it is something I think would be very useful - so users can self-identify with certain interests and then members and community managers can keep these specific groups updated with relevant content

I’m not yet sure whether I would prefer them to pick from a list, or to enter their own tags, but in either case it would be a useful feature that is separate from the ‘Groups’ function, and the Badges

Happy to help scope this out better if needed


(Alessio Fattorini) #8

With tags into the core, can you take this into account? It would be awesome see that on Discourse.