Normaly you do not have to go the way you want.
Alternativ way…
Let’s say i am User-1 (and i have my user-ID). My spoken language is russian, german and english.
I do the registration at your site.
All you have to do is to save the 3-languages for my ID.
That means, you have to generate a database, where you store all the site-users with their related language and other user-data.
When i am now going to search for products, your filtering engine now should know the following thinghs about me to show me the right results.
→ User/-Owner-ID
Of course you also have a big DB where you store all your products, divided into categories, countries and languages(countries), like…
Product-ID / p-price / p-Country
00001 / 344,99€ / Germany
00002 / 216,99€ / England
00003 / 199,99€ / Spain
…ans so on …
Now i am user-1 and in the user-DB there are 3-languages corresponding for my ID.
Now the fitering-engine, should search for me as the user for my specific ID. Find my ID in the user-DB and take a look onto my spoken languages and then compare/filter the product-DB for these 3 languages.