Forem Creators and Builders

loading...

Is it possible to delete/hide tags?

Ildi
“I'm not saying I'm gonna change the world, but I guarantee that I will spark the brain that will change the world.” - Tupac
・1 min read

Sometimes when a user writes a post and adds tags to it, they might make the occasional mistake of misspelling a tag.

For example: I recently wrote this post about Bruno Mars and I made the mistake of writing #brunamars instead of #brunomars as one the tags. When I finally did catch this mistake I was able to edit the post, remove the incorrect tag and add the new tag. This works just fine but the incorrect tag still shows up on the tags page even though there are 0 posts currently for the #brunamars tag.

I looked at the admin settings and documentations and did not find an option to permanently delete tags. I also did not find an option to manually hide/omit tags from the main tags page. Initially I assumed that tags which had 0 posts assigned to them would not be visible to users but that is not the case.

Already on 1VIBE there are 6 tags that have 0 posts assigned to them. These tags were created by mistake as in the example above. Admins should have options to permanently delete these or edit them to the correct tag.

This also came up because today I decided that we need to make some changes to the tags on 1VIBE. Example: #interview will become #interviews, #music will become #songs and #video will become #videos. I wanted to ask this question on here first before I go ahead and make changes.

Discussion (11)

Collapse
nickytonline profile image
Nick Taylor (he/him)

I think for the moment, all you can do is alias it.

  1. Navigate to https://your_site/admin/content_manager/tags
  2. Navigate to https://community.vscodetips.com/admin/content_manager/tags/some_tag_id/edit
  3. Set the alias of the mispelt tag to the one with the correct spelling.

alias field for a tag

Collapse
ildi profile image
Ildi Author

Thank you @nickytonline I did not know that’s how the “Alias for” feature worked. I will use this workaround for now but I do think the tags system/page can use some improvement.

Another suggestion I have is regarding the URL structure for tags that have more than one word. Example: 1vibe.com/t/brunomars should instead be /t/bruno-mars. My understanding is that this would also be beneficial for SEO.

Collapse
nickytonline profile image
Nick Taylor (he/him)

Yeah, for sure it's a workaround.

I definitely agree tag management can be improved. I think it makes sense for tags to allow for kebab case, e.g. bruno-mars. Maybe there was a technical reason we did not allow for this.

Thread Thread
ben profile image
Ben Halpern

Since tags can be user-generated, the concept of fully deleting them may or may not make sense in the grand scheme (we could implement that but it may not be as intuitively obvious for platform mechanics), but we could definitely change /tags to only show supported tags... Which I think would be the intended behavior anyway. Tags that are officially designated as supported by the creator are the important ones.

Thread Thread
ildi profile image
Ildi Author

I’m curious, on DEV have you ever encountered any users creating tags that could be considered offensive? What would be the best action to take in that scenario?

I do like the suggestion of having only “supported” tags show on the /tags page. This would def clean things up a bit.

Thread Thread
michaeltharrington profile image
Michael Tharrington

This is a great question!

We have previously detected offensive tags, but generally we've acted to remove the content under the tag without acting on the tag landing page itself. That would be my recommended move for now.

That said, I can understand wanting to be able to delete the tag landing page too just in case someone were to stumble upon it — it's unlikely to happen if the content posted under the tag is removed, but it is a possibility.

I also think from an admin standpoint it might be nice to block certain tags from being created.

Or maybe there could be a feature to silently hide a tag. I'm thinking hiding a tag would make it so that the tag page and all posts that are tagged with that tag would be de-indexed from search engines and left out of user feeds on the Forem. This might be a good spam mitigation technique too as I've noticed that some spammers come in and use the same tag for their spam over and over.

Thread Thread
ben profile image
Ben Halpern

Realistically we should at least 404 any tag with 0 published posts... Whether or not we technically delete it from the database.

Example: dev.to/t/sex <- No posts. Should probably render not found.

Thread Thread
ildi profile image
Ildi Author

These are all good suggestions @michaeltharrington

I think being able to silently hide a tag and also tell search engines not to index those pages would be a good solution but it sounds like it might just be easier to build an option for admins to delete any tags that were clearly created by mistake or maliciously. I think it goes back to whether or not this was more of a technical decision.

Thread Thread
ildi profile image
Ildi Author

Realistically we should at least 404 any tag with 0 published posts... Whether or not we technically delete it from the database.

I think this would be best. I’m certainly hoping that users do not behave badly, and I’m not seeing this problem occur yet but it’s good that we are discussing it.

Thread Thread
michaeltharrington profile image
Michael Tharrington

Indeed! This is a great one to bring up, Ildi.

And I like Ben's point that tags with 0 published posts should 404. That makes a lotta sense.

Thread Thread
ellativity profile image
Ella Ang (she/her/elle)

I like this suggestion, too, as that's also the result you get from a tag that doesn't exist at all, so it does effectively delete/delist the tag.

I think in addition, it would be nice for tags with 0 posts to be undiscoverable except by admins using the tag manager, so even if there aren't a lot of posts on a Forem the 0 posts tags don't appear in Top Tags or similar lists.