Hi there! I have been messing around with ghost on my local machine for a while now. I would describe myself as a guy that is not a coder/developer, but I do have more knowledge than the average person on websites, hosting, cms’s etc.
So now I am running into an issue that has been going on and on in my head, but I cannot find myself a solution after a long time of googling. So hopefully you guys will be able to help my mind get some rest on this matter
Situation:
Imagine a box with 3x3 fields (9 in total). There are some routes to take on this box which are listed on a static page with several post lists (each with their own unique tag of the route).
For example there is route 1 - 4 - 7 but also a route 1 - 4 - 6 - 9.
Using {{#get “posts” filter=“tags:1469” limit=“3” order=“title asc”}} I am able to show all cards that use this tag. Reference to screenshot on top
So all individual posts explain what to do to go from 1 to 4, 4 to 6 and 6 to 9 etc.
Now for example on the 1 to 4 page I would like related content to be posts: 4 to 7 (part of the 1 - 4 - 7 route), but also 4 to 6 and 6 to 9 (part of the 1 - 4 - 6 - 9 route).
So on the page “1 to 4” I am only getting “4 to 7” as related using this filter: filter=“tags:{{primary_tag.slug}}+id:-{{id}}” Reference to screenshot on bottom
But I would also like to show post in that same list that have the tag 1469.
Hope my explanation is understandable! If not, I’ll try to formulate it again.
Take care of yourself and your surroundings - cheers, Mike
{{#get "posts" limit="5" filter="tags:[{{post.tags}}]+id:-{{post.id}}" include="tags" as |related|}}
{{/get}}
Which is designed to fetch all posts with at least one tag the same as the current post, and behind the scenes Ghost automagically orders them by the number of matches. So a post with 2 matching tags appears before a post with one matching tag.
Hi Hannah! Thanks for your reply I believe I tried that option before writing this topic, but when using the code it returns nothing in the browser (not even “No items found”, so I guess it is returning something I can’t see?).
You might make better progress with using the code from the tutorial and working from there? In the tutorial it uses as |featured| within the #get helper, I believe this is needed to prevent identifier collisions with posts which may already exist on the page.
Is there a way to exclude a tag (specifically an internal tag) from that related posts block? I’ve tried inserting -hash-removeme in a few places (with a comma before), but then the entire block doesn’t render.