Do all corona viruses have spike proteins?

No, not all coronaviruses have spike proteins. Some coronaviruses have other types of proteins, such as the hemagglutinin and neuraminidase proteins found in influenza viruses.