Shift register help.

Yes, variables are case sensitive, make sure they all match. Looks I had that one a bit different. Make them all the same.
MOSI & MISO do not connect. MISO is not used in this example.
Arduino's MOSI goes to shift register Serial In
Arduino's SCK is the defualt 4 MHz clock, goes to shift register SRCLK
(can use SPI.divisor command, set to 2, and get 8 MHz. Call it after SPI.begin)
Arduino's ssPins is the slave select, we use it move data from shift register's input register to it's output register, rising edge on shift register's RCLK pin.
(Many devices need ssPin low to tell the slave it is being commanded. Here the data goes in the input register, and goes no where fit if RCLK is not toggled.)

Any other method uses software commands to 'manually' (i.e. bit bang) control the SCK and MOSI function. That's what shiftOut( ) command does.
Definitely won't get 4 MHz clock with it. Need to use the SPI hardware for that, it's dedicated set of shift registers connected to D11-D12-D13 pins. D10 must be an output to be a master device (vs a slave, watching ssPin to tell it when to communicate).