The hack of vm-expert works. I figured out where to put it and tested it and it works

Open:
1. administrator/components/com_virtuemart/classes/ps_session.php
2. go to +/- line 497 where it says: $Itemid = "&Itemid=".$this->getShopItemid();
3. REPLACE THIS LINE with their code:
// Original Virtuemart Code:
// $Itemid = "&Itemid=".$this->getShopItemid();
// VM-Expert Hack – Start
if(!strpos($text, "category_id="===false)) {
parse_str(str_replace("amp;","",$text),$tk_arr);
if($tk_catid=intval($tk_arr['category_id'])) {
$db = new ps_DB;
$db->query("SELECT id from #__menu where link like '%option=com_virtuemart%' and params like '%category_id=$tk_catid%' and published=1");
if( $db->next_record() ) $result = $db->f("id");
/*
The same with Joomla-DB-Class: $db =& JFactory::getDBO();
$db->setQuery("SELECT id from #__menu where link like '%option=com_virtuemart%' and params like '%category_id=$tk_catid%' and published=1");
$result=$db->loadResult();
*/
if ($result) $tk_itemid=$result;
}
}
$Itemid = "&Itemid=" . ($tk_itemid ? $tk_itemid : $this->getShopItemid());
// VM-Expert Hack - End
et voila!
