Is there a newbie tutorial for adding and controlling z2m devices?

Hi
I have a HA proxmox install and a number of zigbee devices (lights, sockets, switches) from various brands ranging from Philips to Aliexpress.

I obviously want to connect them to HA and then tell HA what switch activates what socket/light etc.

I feel very stupid because I cannot find a simple guide to do these steps. I’ve found some for setting up the z2m add on and adding devices but nothing further on how to control them. I don’t mind a bunch of seperate guides but I’m lost as to why I can’t find one which shows how to tell a zigbee switch to turn on a light for example. Any suggestions greatly appreciated.

I am using a smlight slab-06.

You need two programs, container addons whatever. One is zigbee2mqtt and another is mqtt broker. Mqtt should have enabled auto discovery and z2m enabled topic, usually homeassistant, to send data to mqtt broker.
Put z2m to paring mode, add device and rename it to whatever.
It should show as mqtt device in mqtt integration and then you can control it over mqtt.
If device is not shown in mqtt then mqtt broker or z2m or both are not properly configured.
And that is all.

If I add two devices, for example a 4 gang switch (battery zigbee type not hardwired) then some lights and a socket - how do I program the individual switch buttons to turn on/off the various lights and sockets.

I’ve seen a few YouTubes explaining how to integrate the devices but they simply appear as devices such as switches, lights, sensors etc. I haven’t located a guide (written or video) which shows how to assign a function to the button press such as turn on lights

You don’t have to “program” anything. During paring process device is recognized, if it is supported, as it is and all functions are instantly available in z2m.
For zigbee scene switch you have to use automation to turn lights on or off.
Press some button on the switch and see what does it report. Use that as a trigger and action switch turn on.