There is no reason that anyone selling oil cannot accept other currencies... thus the dollar may not be the gold standard... all money is good as “good as gold for a day” when accepted.
Here is a thought experiment. You operate an oil refinery in Brazil. You agree to buy a tanker full of Saudi oil and pays for it in yuan. Just before the ship leaves port in Saudi Arabia, the US announces that the American navy will no longer guarantee the saftey of tanker ships at sea whose cargo is not denominated in USD. In other words, it won't prevent another country from sinking the ship with your oil, or taking the oil for their own use. The US navy will not do piracy interdiction to keep pirates from stealing your oil. The Americans won't answer any distress call for your ship at all. Zero protection. Just then, Lloyds of London calls to tell you that based on the new policy from the Americans, they no longer want to indemnify your cargo at the previous rate. They want the new premium to be half the value of the oil or board. How do you make sure the ship arrives safely in Brazil?