Whether it is an appropriate national anthem for our country is a different debate, the fact of the matter is our official national anthem was written in English. As such, it should be sung in English.
Becoming a part of this country does not mean giving up one's heritage, it does mean; however, giving up one's loyalties/allegiances to one's native country. The oath of Allegiance for citizenship does state:
I hereby declare, on oath, that I absolutely and entirely renounce and adjure all allegiances and fidelity to any foreign prince, potentate, state, or sovereignty, of whom or which I have heretofore been a subject or citizen.
If you want to be a part of this country, great, but leave your Mexican flags behind, respect our laws (including immigration laws) and take strides to learn the dominant language of this land. Yes this is the land of opportunity, but all opportunities come at a cost.
Finally if I were to move to Russia, I would be expected to learn Russian. If I were to move to France, I would be expected to learn French. If I were to move to Mexico I would be expected to learn Spanish. It is not too much to ask for immigrants to this country to undertake efforts to learn English, which is the de facto language of this country.
I suspect this "Spanish translation" of our national anthem combined with the flying of Mexican flags in the protests will spark a major backlash against the efforts being made to "normalize" illegal aliens.