Non sono certo di avere capito.... mi pare che i casi sono due:

1) ricevi il cookie con la lingua scelta in precedenza. Valorizzi $language e fai un redirect con la scelta nel link.

2) Non ricevi il cookie di lingua. Allora valorizzi $language con il default e fai il redirect.

In pratica, la pagina iniziale non fa che dirottare lo user in base a quanto trovato, valorizzando in modo appropriato $language nel link.

Ora sono io che non so se mi sono spiegato.