The desire to boycott is totally understandable. Working class people in the west see the suffering of Bangladeshi workers and want to do something to help.
But in the market it's one-dollar-one-vote. In a class struggle situation of rich-vs-poor seen today, boycotts are very ineffective because the rich have the majority of the votes. A billionaire can outvote many millions of poor people.
Also more often than not it moralises those who cannot afford to make these kinds of consumer choices (local bookshops, ethical eating, McDonalds versus local businesses etc) as bad, while failing to recognise, for example, stagnant wages in the west.
Boycotts do nothing to challenge the implied market-consumer relationship. By not considering capitalism as a system it fails to understand
why factories are built cheaply. It is not simply because they are evil. It is because the system requires as much in order for companies to operate especially as markets become saturated and profits begin to fall.
See the example of Starbucks which felt a boycott due to tax avoidance. They might throw a bit more tax in, but it needs to drive down its costs elsewhere,
hence it begins discipling labour to cut costs. This is because in the UK Starbucks is simply not profitable. It must reduce its costs and will do this by any means - it is the way the capitalist market
is.
Rather than all this battles must and should occur not at the point of exchange but at the point of production. A good idea I've heard is something the Mining Division of the Australian CFMEU used to do until recently. If there was a fatality in a mine on a particular coal field, all workers on the coal field walked out and didn't go back until after the funeral, usually three days later. The effect was to make all coal mining companies anxious to improve the safety of the industry as a whole, since bosses were punished financially for the crimes of other bosses. In these circumstances, the coal mining bosses became great advocates of the state stepping in to improve health and safety practices of other bosses and were keen to prevent "cowboys" at other companies resulting in production ceasing at their own.
The Australian miners as a class recognised that they have nothing in common with the mine-owner class. The entire mine-owning class would be punished in the name of injury-to-one-is-an-injury-to-all. It was effective because the labourers had power beyond their pittency salary, they knew that the bosses couldn't make money without their labour. The miners acted as members of the working class, not as consumer-citizens.
We as protelatians can't win with boycotts or anything within the system because we've poor. Boycotts are only good for alleviating guilt. We can win by working together against the system that organises time, work, production and ultimately our lives.