Vor der schließenden Klammer fehlt ein Hochkomma:
$this->cacheCode('[php]','onclick="openurl('http://meineurl.de');"')
Und das onclick darf auch nicht irgendwo eigegeben werden, sondern das ist ein Attribut des hotspot Elements.
$this->cacheCode('[php]','<hotspot onclick="openurl('http://meineurl.de');" ... >...</hotspot>')
Für ein neues Fenster:
$this->cacheCode('[php]','<hotspot onclick="openurl('http://meineurl.de',_blank);" ... >...</hotspot>')
Immer nützlich:
Doku