Start with a food your child likes. For this example, I will be using fish shaped crackers. Figure out what it is that your child likes about the food. Is it the shape, color, texture, etc.
Find a food with a similar characteristic. If your child likes the texture and fish shape, try getting the different colored fish crackers. This may not seem like a big change to you, but it may be huge to your child. You can even mix in a couple of colored fish with plain ones.
Once your child is accepting of the first change, you can make an additional change. Maybe you can get another cheese cracker or maybe you can get a fish shaped cracker in a different flavor.
Continue making small changes over time and you will eventually be able to introduce completely new foods. If you hit a wall, you can always slow down or back track. Because this approach needs to be very individualized, it can be helpful to work with a specialist.