Visto che stampi a video un solo link, potresti uscire dal ciclo seguente dopo avere trovato un valore.

Codice PHP:
//confronto elenco con materia post
foreach($termini as $elenco){  
  if(
in_array($elenco,$materia)){    
    
$cat_matstrtolower($elenco);    
    
$category_id get_cat_ID$elenco );    
    
$cat_linkget_category_link($category_id);
    <<< 
qui >>>  
  }

dovresti aggiungere del codice nel caso in cui non trovassi nulla per non scrivere un link "vuoto".