While a portal filter is possible, the expression will be complex to set up if you have more than 2 or three categories.
It would be much simpler to use this relationship:
proposals::gSearch_Categories = products::category_id
With gSearch_Categories formatted with check boxes for every category, selecting two category check boxes would cause the portal to list products from both categories and you can then easily select as many or as few categories as you want. (We've been using this trick with portals since before filtered portals were possible in FileMaker. )