There are different types of homophones:
Some homophones are similar in spelling, but different in meanings. They are called homographs. For instance, hail vs. hail. One hail means ice storm and the second means something that occurs in large numbers (eg a hail of bullets).
Some of them have the same pronunciation but different meanings and these are called homonyms. For instance, cite, sight and site.
The homophones that have different spellings but are pronounced in the same way are called heterographs. For instance, write vs. right.
The homophones that have multiple words or phrases, having similar sounds, are called oronyms. For instance, “ice cream”vs. “I scream”.
Pseudo-homophones are homophones that are identical phonetically. However, one of the pair of words is not a real word, such as groan/grone.