New York ace Johan Santana and closer Francisco Rodriguez were selected by the players.
Starting for the NL: Pujols at first, Philadelphia second baseman Chase Utley, Florida shortstop Hanley Ramirez, Wright at third, Cardinals catcher Yadier Molina and Beltran, Milwaukee's Ryan Braun and Philadelphia's Raul Ibanez in the outfield. Ibanez has been sidelined by a groin injury and could sit out.
Molina, who turns 27 on July 13 and is the youngest of three brothers playing catcher in the majors, becomes the first of his siblings to make the All-Star game.
"It's special for me, for my family, for the people of Puerto Rico," he said. "It's a small country, and it's special for them, too."
The AL starting lineup: Teixeira at first, Pedroia at second, Yankees shortstop Derek Jeter, Tampa Bay third baseman Evan Longoria, outfielders Bay, Josh Hamilton of Texas and Ichiro Suzuki of Seattle, and Minnesota catcher Joe Mauer.
Hamilton held onto his starting spot despite being on the disabled list for much of the first half with an abdominal injury.
"I don't feel I personally deserve to go but at the same time the fans voted me in so I'm more than happy about that," he said. "It's a real honor for me to go for a second time around."
Jeter was the leading vote-getter in the AL and will make his 10th appearance and sixth start in the Midsummer Classic.
"It's kind of hard to believe," he said. "It makes you feel good."
Jeter and the AL beat the National League 4-3 in 15 innings at Yankee Stadium last season to improve to 11-0-1 since the NL last won in 1996 at Philadelphia's old Veterans Stadium, the longest unbeaten streak in the game's history.
Once again, the league that wins the All-Star game will get home-field advantage in the World Series.
As usual, there were a few snubs to go along with a couple of missing players used to playing in baseball's showcase game.