Sockets certainly sound like the way to go, I’ve posted a link below to an unreal document on setting up sockets on Static Mesh, you can easily find a similar resource for skeletal mesh if you can’t. The beauty of Sockets is that anything that you attach to the socket will take on the Location, Rotation, and Scale of the socket.
If you don’t see the sockets, go to “Windows” tab and click on “Socket manager”, then in the bottom right corner of the editor you should be able to see the socket manager, from here you can add a new socket by hitting the green button. For your preview mesh you are going to want to select your where. From here use the details panel to adjust you socket to best fit the wheel and you’re done. Then when you attach you wheel to the car just make sure to include the socket name just as you set it up. (Picture below for Socket manager location)
ie. in C++
MyWheel -> AttachToActor(MyCar, AttachmentRules,TEXT("SocketName"));
I hope this helps. Link to unreal docs below:
[Setting Up and Using Sockets With Static Meshes | Unreal Engine Documentation][1]