Very meta!
To find all the tags, you can create a search card for tags (here named "tagsearch") where the WQL looks something like this:
{ "referred_to_by": {"right":"tag"} }
...which essentially means "all the cards referred to by cards ending in +tag". To include that card with each item as a link, you could do:
..which means, include the tagsearch card, showing each item in link view. But that's not yet quite what you want, because it would just link to the cards themselves, not to a search for all the cards tagged by them. To create that link for things tagged with "beautiful", you'd want to go to "beautiful+*tagged". To do that in a patterned way, you could make a new structure, something like:
[[ +*tagged | {{_|name}} ]]
Supposing you called that card "tagstructure" (I recommend the HTML type for such things, but Basic would work, too). You would then get the final result you want with something like this:
{{ tagsearch ||content;structure:tagstructure }}
This means: include the tagsearch card, showing each item in content view, but replacing the content with the structure from the 'tagstructure' card.