Walmart will halt sales of ammunition for handguns and some military-style rifles, the company announced on Tuesday, calling the status quo on firearms in the United States “unacceptable.”

Walmart further said that it will direct consumers not to carry firearms into its stores, a practice that is legal in “open carry” states but which has sparked safety scares in recent weeks.

The moves, which were praised by gun control advocates and ridiculed by gun rights supporters, came a month after a deadly shooting at an El Paso.

Chief Executive Doug McMillon called on Congress and the White House to enact “common sense” measures, including stronger background checks for gun purchases while signalling the retail giant still plans to sell sporting rifles.

“As we’ve seen before, these horrific events occur and then the spotlight fades. We should not allow that to happen,” McMillon said in a statement.

The company will also no longer sell ammunition for short-barrel rifles, which can be used for hunting but also in military-style weapons.

The company will still sell long-barrel deer rifles and shotguns and much of the ammunition they use, leaving its stores “even more focused on the needs of hunting and sport shooting enthusiasts,” McMillon said.

Late on Tuesday, Kroger, the biggest US supermarket chain, called for strengthened background checks and announced that it was “respectfully asked the customers no longer openly carry firearms into our stores, other than authorized law enforcement officers”.

The world’s biggest retailer, Arkansas-based Walmart has more than 4,700 stores across America, many in conservative regions where political opposition to gun control is strong.

The hashtag #boycottwalmart was trending Tuesday afternoon on Twitter and the move drew a strident response from the National Rifle Association.

“It is shameful to see Walmart succumb to the pressure of the anti-gun elites,” the NRA said.

Last month, 20 people were killed and many injured in a mass shooting at the Walmart store in the US city of El Paso.

(With AFP inputs)