In my view, the issue of official language status is largely a political one. From a practical point of view, if my customers speak Spanish or Tagalog, and I think I can increase my business by offering services in those languages, I will. But an official language status implies that this language is more important than others, perhaps deserving of some protection or support, or perhaps deserving of some privileged status in terms of communications between government and the people.
Since this is a political issue, it should be, and will probably be, decided democratically. In theory that should mean that Spanish has no chance nationally in the US, but may be voted in as an official language at the state or even municipal level. It is, however, possible that based on the "squeaky wheel" principle of interest group politics, a decision might be made in favour of Spanish at some point, even if a majority of Americans are against it.
I do not see this as a moral issue, i.e. that more people should speak Spanish, because it is good for them. We have that in Canada, where certain elites think that "more people should speak French". I do not see it that way. People can choose to learn more languages if they want. I like learning languages. But I respect the fact that people can do what they want in this regard, and many people are simply not interested in languages.
In the case of Canada, my personal preference is to maintain English and French as official languages, which have priority status, are supported by government, and are the main languages of communication between the federal government and the people. If Quebec...