Credo di aver capito qual è il tuo problema.
La query che ne esce è mostruosa...
ora non ho tempo di scriverla, ma provo a spiegartela.

Devi raddoppiare tutte le join sulle tre tabelle multilingua (perché poi la quarta non ce l'ha?), mettendo nelle condizioni di join la lingua a 1 sulla prima e a 2 sulla seconda (fra l'altro non so nemmeno quanto sia ortodosso dal punto di vista dell'sql).
Poi devi usare degli IFNULL sulla select in modo da estrarre ogni volta i dati dalla seconda tabella quando la prima non ce l'ha.

Immagino che non si sarà capito niente, ma per ora non posso fare di più