“We're collecting canned goods and other non-perishable items to donate to a local homeless shelter.”

You've volunteering for a charity organization by standing outside a supermarket and asking for donations. A customer slows down as she walks by you, so she seems to be interested, and so you explain to her this.

We're collecting canned goods and other non-perishable items to donate to a local homeless shelter.

A "homeless shelter" is a place where homeless people can come to get food, a place to sleep, and sometimes other services like showers, counseling, and medical care. Homeless shelters are usually run by charities, churches, volunteer organizations, etc.

"Donating" something to a homeless shelter means giving the organization money, food, or other things to help them out. You can also "donate your time".