how to load random related posts with specific custom fields?

I want to load 3 posts that have the same custom field value as the current post.
for example:
The current post has 3 custom fields:
color: black
background: red
lastname: doe
Now I want to load three posts with these custom fields:
first post: color:black
second post: background:red
third post: lastname:doe
these are my codes:

Loop through posts of only 2 statuses

Setting up a visibility condition for a widget – i need it to apply to the posts in a certain term but only those of “pending” and “publish” status. this essentially hides the “add new post” button if they already have a post in that term that is pending or published. i just cant define the 2 statuses properly. i can define just 1 and it works perfect.